db661717 by 夏齐

首次提交

1 parent 9545f232
Showing 244 changed files with 2678 additions and 17478 deletions
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
5 <modelVersion>4.0.0</modelVersion> 5 <modelVersion>4.0.0</modelVersion>
6 6
7 <groupId>com.pashanhoo</groupId> 7 <groupId>com.pashanhoo</groupId>
8 <artifactId>archive-system</artifactId> 8 <artifactId>hzbdcsyn</artifactId>
9 <version>1.0-SNAPSHOT</version> 9 <version>1.0-SNAPSHOT</version>
10 10
11 <dependencies> 11 <dependencies>
...@@ -63,6 +63,11 @@ ...@@ -63,6 +63,11 @@
63 <artifactId>spring-boot-starter-web</artifactId> 63 <artifactId>spring-boot-starter-web</artifactId>
64 <version>${org.spring.boot.version}</version> 64 <version>${org.spring.boot.version}</version>
65 </dependency> 65 </dependency>
66 <dependency>
67 <groupId>org.apache.commons</groupId>
68 <artifactId>commons-lang3</artifactId>
69 <version>3.3.2</version>
70 </dependency>
66 71
67 <!--<dependency>--> 72 <!--<dependency>-->
68 <!-- <groupId>org.springframework.session</groupId>--> 73 <!-- <groupId>org.springframework.session</groupId>-->
...@@ -129,7 +134,7 @@ ...@@ -129,7 +134,7 @@
129 <groupId>org.projectlombok</groupId> 134 <groupId>org.projectlombok</groupId>
130 <artifactId>lombok</artifactId> 135 <artifactId>lombok</artifactId>
131 <optional>true</optional> 136 <optional>true</optional>
132 <version>1.18.8</version> 137 <version>1.16.20</version>
133 </dependency> 138 </dependency>
134 139
135 <dependency> 140 <dependency>
...@@ -220,12 +225,12 @@ ...@@ -220,12 +225,12 @@
220 <artifactId>mapstruct-processor</artifactId> 225 <artifactId>mapstruct-processor</artifactId>
221 <version>${mapstruct.version}</version> 226 <version>${mapstruct.version}</version>
222 </dependency> 227 </dependency>
223 <dependency> 228 <!-- <dependency>
224 <groupId>polaris</groupId> 229 <groupId>polaris</groupId>
225 <artifactId>polaris-fileattachment</artifactId> 230 <artifactId>polaris-fileattachment</artifactId>
226 <version>1.0</version> 231 <version>1.0</version>
227 <scope>compile</scope> 232 <scope>compile</scope>
228 </dependency> 233 </dependency>-->
229 <dependency> 234 <dependency>
230 <groupId>io.minio</groupId> 235 <groupId>io.minio</groupId>
231 <artifactId>minio</artifactId> 236 <artifactId>minio</artifactId>
...@@ -267,6 +272,16 @@ ...@@ -267,6 +272,16 @@
267 <artifactId>tess4j</artifactId> 272 <artifactId>tess4j</artifactId>
268 <version>4.5.3</version> 273 <version>4.5.3</version>
269 </dependency> 274 </dependency>
275 <dependency>
276 <groupId>net.glxn.qrgen</groupId>
277 <artifactId>javase</artifactId>
278 <version>2.0</version>
279 </dependency>
280 <dependency>
281 <groupId>org.ofdrw</groupId>
282 <artifactId>ofdrw-full</artifactId>
283 <version>1.8.6</version>
284 </dependency>
270 285
271 </dependencies> 286 </dependencies>
272 287
...@@ -275,6 +290,7 @@ ...@@ -275,6 +290,7 @@
275 <plugin> 290 <plugin>
276 <groupId>org.springframework.boot</groupId> 291 <groupId>org.springframework.boot</groupId>
277 <artifactId>spring-boot-maven-plugin</artifactId> 292 <artifactId>spring-boot-maven-plugin</artifactId>
293 <version>2.2.8.RELEASE</version>
278 <executions> 294 <executions>
279 <execution> 295 <execution>
280 <goals> 296 <goals>
...@@ -291,6 +307,14 @@ ...@@ -291,6 +307,14 @@
291 <skip>true</skip> 307 <skip>true</skip>
292 </configuration> 308 </configuration>
293 </plugin> 309 </plugin>
310 <plugin>
311 <groupId>org.apache.maven.plugins</groupId>
312 <artifactId>maven-compiler-plugin</artifactId>
313 <configuration>
314 <source>8</source>
315 <target>8</target>
316 </configuration>
317 </plugin>
294 </plugins> 318 </plugins>
295 319
296 <resources> 320 <resources>
...@@ -298,7 +322,7 @@ ...@@ -298,7 +322,7 @@
298 <directory>src/main/resources</directory> 322 <directory>src/main/resources</directory>
299 <excludes> 323 <excludes>
300 <!--使用通配符,当然可以定义多个exclude标签进行排除--> 324 <!--使用通配符,当然可以定义多个exclude标签进行排除-->
301 <exclude>application*.yaml</exclude> 325 <exclude>application*.yml</exclude>
302 </excludes> 326 </excludes>
303 </resource> 327 </resource>
304 328
...@@ -338,8 +362,6 @@ ...@@ -338,8 +362,6 @@
338 </profiles> 362 </profiles>
339 363
340 <properties> 364 <properties>
341 <maven.compiler.source>11</maven.compiler.source>
342 <maven.compiler.target>11</maven.compiler.target>
343 <oracle.version>11.2.0.4</oracle.version> 365 <oracle.version>11.2.0.4</oracle.version>
344 <geotools.version>24-SNAPSHOT</geotools.version> 366 <geotools.version>24-SNAPSHOT</geotools.version>
345 <org.springframework.version>5.1.8.RELEASE</org.springframework.version> 367 <org.springframework.version>5.1.8.RELEASE</org.springframework.version>
...@@ -354,8 +376,6 @@ ...@@ -354,8 +376,6 @@
354 <springfox.swagger2.version>2.9.2</springfox.swagger2.version> 376 <springfox.swagger2.version>2.9.2</springfox.swagger2.version>
355 <mapstruct.version>1.3.0.Final</mapstruct.version> 377 <mapstruct.version>1.3.0.Final</mapstruct.version>
356 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 378 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
357 <maven.compiler.source>11</maven.compiler.source>
358 <maven.compiler.target>11</maven.compiler.target>
359 </properties> 379 </properties>
360 380
361 </project> 381 </project>
......
...@@ -23,7 +23,7 @@ public class SwaggerConfig { ...@@ -23,7 +23,7 @@ public class SwaggerConfig {
23 .apiInfo(apiInfo()) 23 .apiInfo(apiInfo())
24 .select() 24 .select()
25 // 为当前包路径 25 // 为当前包路径
26 // .apis(RequestHandlerSelectors.basePackage("com.pashanhoo")) 26 .apis(RequestHandlerSelectors.basePackage("com.pashanhoo"))
27 .apis(RequestHandlerSelectors.withClassAnnotation(Api.class)) 27 .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
28 .paths(PathSelectors.any()) 28 .paths(PathSelectors.any())
29 .build(); 29 .build();
...@@ -33,7 +33,7 @@ public class SwaggerConfig { ...@@ -33,7 +33,7 @@ public class SwaggerConfig {
33 private ApiInfo apiInfo() { 33 private ApiInfo apiInfo() {
34 return new ApiInfoBuilder() 34 return new ApiInfoBuilder()
35 // 页面标题 35 // 页面标题
36 .title("档案系统 接口文档") 36 .title("接口文档")
37 // 版本号 37 // 版本号
38 .version("1.0") 38 .version("1.0")
39 // 描述 39 // 描述
......
1 package com.pashanhoo.archive.controller;
2
3 import com.baomidou.mybatisplus.core.metadata.IPage;
4 import com.pashanhoo.archive.entity.vo.*;
5 import com.pashanhoo.archive.service.DgArchivesService;
6 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogListVO;
7 import com.pashanhoo.catalog.entity.vo.UpdateDgArchivesCatalogRequest;
8 import com.pashanhoo.common.Result;
9 import org.springframework.web.bind.annotation.RestController;
10 import org.springframework.web.bind.annotation.*;
11 import io.swagger.annotations.Api;
12 import io.swagger.annotations.ApiOperation;
13 import io.swagger.annotations.ApiParam;
14 import org.springframework.beans.factory.annotation.Autowired;
15
16 import java.util.List;
17
18 /**
19 * <p>
20 * 案卷基本信息 前端控制器
21 * </p>
22 *
23 * @author
24 * @since 2021-11-05
25 */
26 @RestController
27 @RequestMapping("/system/dgArchives/")
28 @Api(tags = "案卷基本信息接口")
29 public class DgArchivesController {
30 @Autowired
31 private DgArchivesService dgarchivesService;
32
33 @PostMapping("insertDgArchives")
34 @ApiOperation("新增案卷基本信息")
35 public Result insertDgArchives(@RequestBody AddDgArchivesRequest request) {
36 if (dgarchivesService.insertDgArchives(request)) {
37 return Result.ok();
38 }
39 return Result.error("新增失败");
40 }
41
42 @DeleteMapping("deleteDgArchivesByIds")
43 @ApiOperation(value = "批量删除案卷基本信息")
44 public Result deleteDgArchivesByIds(@ApiParam("案卷基本信息ID列表") @RequestParam(value = "idList") List<String> idList) {
45 if (dgarchivesService.removeByIds(idList)) {
46 return Result.ok("删除成功");
47 }
48 return Result.error("删除失败");
49 }
50
51 @PutMapping("updateDgArchives")
52 @ApiOperation("修改案卷基本信息,业务信息,不动产信息")
53 public Result updateDgArchives(@RequestBody UpdateArchiveAndOtherInfoRequest request) {
54 if (dgarchivesService.updateDgArchivesReplenish(request)) {
55 return Result.ok("修改成功");
56 }
57 return Result.error("修改失败");
58 }
59
60 @GetMapping("getDgArchivesDetailById")
61 @ApiOperation(value = "案卷基本信息")
62 public Result<ArchiveDetailAndCoverVO> getDgArchivesDetailById(@ApiParam("案卷标识码") @RequestParam String bsmArchive) {
63 return Result.ok(dgarchivesService.getDgArchivesDetailById(bsmArchive));
64 }
65
66 @PostMapping("searchArchives")
67 @ApiOperation(value = "档案查找")
68 public Result<IPage<SearchArchiveVO>> searchArchives(@RequestBody SearchArchiveRequest request) {
69
70 return Result.ok(dgarchivesService.searchArchive(request));
71 }
72
73 @GetMapping("searchArchivesCover")
74 @ApiOperation(value = "案卷封皮信息查找")
75 public Result<ArchiveDetailAndCoverVO> searchArchivesCover(@ApiParam("档案标识码") @RequestParam String bsmArchive) {
76
77 return Result.ok(dgarchivesService.searchArchivesCover(bsmArchive));
78 }
79
80 /**
81 * 通过案卷标识码加载左菜单目录
82 *
83 * @param bsmArchives 案卷标识码
84 * @return
85 */
86 @GetMapping("getLifeMenu")
87 @ApiOperation(value = "通过案卷标识码加载左菜单目录")
88 public Result getArchiveLiftMenu(@ApiParam("案卷标识码") @RequestParam String bsmArchives) {
89 return Result.ok(dgarchivesService.getArchiveLiftMenu(bsmArchives));
90 }
91
92 /**
93 * 目录修改保存
94 * 1.比对新增的记录数据库是否存在,如果不存在则新增
95 * 2.比对数据库的数据是否存在前端传递的集合中,不存在则删除,并且删除对应的电子附件数据
96 * 3.如果目录记录标识码与数据库一致,直接更新当前的记录
97 *
98 * @param requests
99 * @return
100 */
101 @PostMapping("saveCatalogs")
102 @ApiOperation(value = "目录修改保存")
103 public Result saveCatalogs(@RequestBody List<UpdateDgArchivesCatalogRequest> requests) {
104
105 if (dgarchivesService.updateCatalog(requests)) {
106 return Result.ok("修改成功");
107 }
108 return Result.error("修改失败");
109 }
110
111 /**
112 * 档案目录查找
113 *
114 * @param bsmArchive
115 * @return
116 */
117 @GetMapping("searchCatalog")
118 @ApiOperation(value = "查询档案目录")
119 public Result<List<DgArchivesCatalogListVO>> searchCatalog(@RequestParam String bsmArchive) {
120
121 return Result.ok(dgarchivesService.searchCatalog(bsmArchive));
122 }
123 }
1 package com.pashanhoo.archive.entity;
2
3 public enum ArchiveStatus {
4 //档案状态(1:正在接收;2:正在补录;3:正在修改;4:在库;5:正在销毁;6:已销毁;7:正在借阅;8:已借阅)
5 /**
6 * 正在接收
7 */
8 RECEIVING(1,"正在接收"),
9 /**
10 * 正在补录
11 */
12 REPLENISHING(2,"正在补录"),
13 /**
14 * 正在修改
15 */
16 MODIFYING(3,"正在修改"),
17 /**
18 * 在库
19 */
20 STORED(4,"在库"),
21 /**
22 * 正在销毁
23 */
24 DESTROYING(5,"正在销毁"),
25 /**
26 * 已销毁
27 */
28 DESTROYED(6,"已销毁"),
29 /**
30 * 正在借阅
31 */
32 LENDING(7,"正在借阅"),
33 /**
34 * 已借阅
35 */
36 LENDED(8,"已借阅");
37
38 private Integer code;
39 private String description;
40
41 ArchiveStatus(Integer code,String description) {
42 this.code = code;
43 this.description = description;
44 }
45
46 public Integer getCode() {
47 return this.code;
48 }
49 }
1 package com.pashanhoo.archive.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.archive.entity.vo.AddDgArchivesRequest;
6 import com.pashanhoo.archive.entity.vo.DgArchivesDetailVO;
7 import com.pashanhoo.archive.entity.vo.DgArchivesListVO;
8 import com.pashanhoo.archive.entity.vo.UpdateDgArchivesRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgArchivesConverter{
17 DgArchivesDO addRequest2DO(AddDgArchivesRequest request);
18
19 DgArchivesDetailVO do2DetailVO(DgArchivesDO dgarchivesDO);
20
21 DgArchivesDO updateRequest2DO(UpdateDgArchivesRequest request);
22
23 DgArchivesListVO do2ListVO(DgArchivesDO dgarchivesDO);
24
25 List<DgArchivesListVO> doList2ListVOList(List<DgArchivesDO> dgarchivesDOList);
26
27 List<DgArchivesDO> addArchivesList(List<AddDgArchivesRequest> request);
28 }
1 package com.pashanhoo.archive.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import java.util.Date;
6 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableField;
8 import java.io.Serializable;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11
12 /**
13 * <p>
14 * 案卷基本信息
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @TableName("DG_ARCHIVES")
23 public class DgArchivesDO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 档案标识码
29 */
30 @TableId(value = "BSM_ARCHIVES", type = IdType.UUID)
31 private String bsmArchives;
32
33 /**
34 * 案卷标题
35 */
36 @TableField("AJBT")
37 private String ajbt;
38
39 /**
40 * 主题词
41 */
42 @TableField("ZTC")
43 private String ztc;
44
45 /**
46 * 分类号
47 */
48 @TableField("FLH")
49 private String flh;
50
51 /**
52 * 目录号
53 */
54 @TableField("MLH")
55 private String mlh;
56
57 /**
58 * 案卷号
59 */
60 @TableField("AJH")
61 private String ajh;
62
63 /**
64 * 年度
65 */
66 @TableField("ND")
67 private Integer nd;
68
69 /**
70 * 件数
71 */
72 @TableField("JS")
73 private Integer js;
74
75 /**
76 * 页数
77 */
78 @TableField("YS")
79 private Integer ys;
80
81 /**
82 * 保管期限
83 */
84 @TableField("BGQX")
85 private String bgqx;
86
87 /**
88 * 起始日期
89 */
90 @TableField("QSRQ")
91 private Date qsrq;
92
93 /**
94 * 终止日期
95 */
96 @TableField("ZZRQ")
97 private Date zzrq;
98
99 /**
100 * 保密级别
101 */
102 @TableField("MJ")
103 private String mj;
104
105 /**
106 * 盒号
107 */
108 @TableField("HH")
109 private String hh;
110
111 /**
112 * 存放位置
113 */
114 @TableField("CFWZ")
115 private String cfwz;
116
117 /**
118 * 创建人
119 */
120 @TableField("CJR")
121 private String cjr;
122
123 /**
124 * 创建日期
125 */
126 @TableField("CJRQ")
127 private Date cjrq;
128
129 /**
130 * 核查人
131 */
132 @TableField("HCR")
133 private String hcr;
134
135 /**
136 * 备注
137 */
138 @TableField("BZ")
139 private String bz;
140
141 /**
142 * 扫描状态
143 */
144 @TableField("SMZT")
145 private Integer smzt;
146
147 /**
148 * 档案状态
149 */
150 @TableField("DAZT")
151 private Integer dazt;
152
153 /**
154 * 存档机构编码
155 */
156 @TableField("CDJGBM")
157 private String cdjgbm;
158
159 /**
160 * 档案来源(1:不动产归档,2:存量档案补录)
161 */
162 @TableField("DALY")
163 private String daly;
164
165
166 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import java.math.BigDecimal;
4 import java.util.Date;
5 import java.io.Serializable;
6
7 import com.fasterxml.jackson.annotation.JsonFormat;
8 import io.swagger.annotations.ApiModel;
9 import io.swagger.annotations.ApiModelProperty;
10 import lombok.Data;
11 import lombok.EqualsAndHashCode;
12 import org.springframework.format.annotation.DateTimeFormat;
13
14 /**
15 * <p>
16 * 案卷基本信息新增请求实体
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 @Data
23 @EqualsAndHashCode(callSuper = false)
24 @ApiModel(value="案卷基本信息新增请求实体")
25 public class AddDgArchivesRequest implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28
29 /**
30 * 案卷标识码
31 */
32 @ApiModelProperty(name = "bsmArchives", value = "案卷标识码")
33 private String bsmArchives;
34 /**
35 * 案卷标题
36 */
37 @ApiModelProperty(name = "ajbt", value = "案卷标题")
38 private String ajbt;
39
40 /**
41 * 主题词
42 */
43 @ApiModelProperty(name = "ztc", value = "主题词")
44 private String ztc;
45
46 /**
47 * 分类号
48 */
49 @ApiModelProperty(name = "flh", value = "分类号")
50 private String flh;
51
52 /**
53 * 目录号
54 */
55 @ApiModelProperty(name = "mlh", value = "目录号")
56 private String mlh;
57
58 /**
59 * 案卷号
60 */
61 @ApiModelProperty(name = "ajh", value = "案卷号")
62 private String ajh;
63
64 /**
65 * 年度
66 */
67 @ApiModelProperty(name = "nd", value = "年度")
68 private Integer nd;
69
70 /**
71 * 件数
72 */
73 @ApiModelProperty(name = "js", value = "件数")
74 private Integer js;
75
76 /**
77 * 页数
78 */
79 @ApiModelProperty(name = "ys", value = "页数")
80 private Integer ys;
81
82 /**
83 * 保管期限
84 */
85 @ApiModelProperty(name = "bgqx", value = "保管期限")
86 private String bgqx;
87
88 /**
89 * 起始日期
90 */
91 @ApiModelProperty(name = "qsrq", value = "起始日期")
92 private Date qsrq;
93
94 /**
95 * 终止日期
96 */
97 @ApiModelProperty(name = "zzrq", value = "终止日期")
98 private Date zzrq;
99
100 /**
101 * 保密级别
102 */
103 @ApiModelProperty(name = "mj", value = "保密级别")
104 private String mj;
105
106 /**
107 * 盒号
108 */
109 @ApiModelProperty(name = "hh", value = "盒号")
110 private String hh;
111
112 /**
113 * 存放位置
114 */
115 @ApiModelProperty(name = "cfwz", value = "存放位置")
116 private String cfwz;
117
118 /**
119 * 创建人
120 */
121 @ApiModelProperty(name = "cjr", value = "创建人")
122 private String cjr;
123
124 /**
125 * 创建日期
126 */
127 @ApiModelProperty(name = "cjrq", value = "创建日期")
128 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
129 private Date cjrq;
130
131 /**
132 * 核查人
133 */
134 @ApiModelProperty(name = "hcr", value = "核查人")
135 private String hcr;
136
137 /**
138 * 备注
139 */
140 @ApiModelProperty(name = "bz", value = "备注")
141 private String bz;
142
143 /**
144 * 扫描状态
145 */
146 @ApiModelProperty(name = "smzt", value = "扫描状态")
147 private Integer smzt;
148
149 /**
150 * 档案状态
151 */
152 @ApiModelProperty(name = "dazt", value = "档案状态")
153 private Integer dazt;
154
155 /**
156 * 存档机构编码
157 */
158 @ApiModelProperty(name = "cdjgbm", value = "存档机构编码")
159 private String cdjgbm;
160
161 /**
162 * 档案来源(1:不动产归档,2:存量档案补录)
163 */
164 @ApiModelProperty(name = "daly", value = "档案来源(1:不动产归档,2:存量档案补录)")
165 private String daly;
166
167 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import com.fasterxml.jackson.annotation.JsonInclude;
4 import com.pashanhoo.bdcdy.entity.vo.DgBdcdyDetailVO;
5 import com.pashanhoo.business.entity.vo.DgBusinessDetailVO;
6 import io.swagger.annotations.ApiModel;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9
10 import java.io.Serializable;
11 import java.util.List;
12
13 /**
14 * 档案封皮返回实体
15 */
16 @Data
17 @EqualsAndHashCode(callSuper = false)
18 @ApiModel(value = "档案封皮和案卷信息返回实体")
19 @JsonInclude()
20 public class ArchiveDetailAndCoverVO implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 案卷基本信息实体
26 */
27 private DgArchivesDetailVO dgArchivesDetailVO;
28
29 /**
30 * 不动产信息实体集合
31 */
32 private List<DgBdcdyDetailVO> dgBdcdyDetailVOList;
33
34 /**
35 * 业务信息实体
36 */
37 private DgBusinessDetailVO dgBusinessDetailVO;
38 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import java.math.BigDecimal;
4 import java.util.Date;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import java.io.Serializable;
8
9 import com.fasterxml.jackson.annotation.JsonFormat;
10 import io.swagger.annotations.ApiModel;
11 import io.swagger.annotations.ApiModelProperty;
12 import lombok.Data;
13 import lombok.EqualsAndHashCode;
14 import org.springframework.format.annotation.DateTimeFormat;
15
16 /**
17 * <p>
18 * 案卷基本信息明细实体
19 * </p>
20 *
21 * @author
22 * @since 2021-11-05
23 */
24 @Data
25 @EqualsAndHashCode(callSuper = false)
26 @ApiModel(value="案卷基本信息明细实体")
27 public class DgArchivesDetailVO implements Serializable {
28
29 private static final long serialVersionUID = 1L;
30
31 /**
32 * 档案标识码
33 */
34 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
35 private String bsmArchives;
36
37 /**
38 * 案卷标题
39 */
40 @ApiModelProperty(name = "ajbt", value = "案卷标题")
41 private String ajbt;
42
43 /**
44 * 主题词
45 */
46 @ApiModelProperty(name = "ztc", value = "主题词")
47 private String ztc;
48
49 /**
50 * 分类号
51 */
52 @ApiModelProperty(name = "flh", value = "分类号")
53 private String flh;
54
55 /**
56 * 目录号
57 */
58 @ApiModelProperty(name = "mlh", value = "目录号")
59 private String mlh;
60
61 /**
62 * 案卷号
63 */
64 @ApiModelProperty(name = "ajh", value = "案卷号")
65 private String ajh;
66
67 /**
68 * 年度
69 */
70 @ApiModelProperty(name = "nd", value = "年度")
71 private Integer nd;
72
73 /**
74 * 件数
75 */
76 @ApiModelProperty(name = "js", value = "件数")
77 private Integer js;
78
79 /**
80 * 页数
81 */
82 @ApiModelProperty(name = "ys", value = "页数")
83 private Integer ys;
84
85 /**
86 * 保管期限
87 */
88 @ApiModelProperty(name = "bgqx", value = "保管期限")
89 private String bgqx;
90
91 /**
92 * 起始日期
93 */
94 @ApiModelProperty(name = "qsrq", value = "起始日期")
95 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
96 private Date qsrq;
97
98 /**
99 * 终止日期
100 */
101 @ApiModelProperty(name = "zzrq", value = "终止日期")
102 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
103 private Date zzrq;
104
105 /**
106 * 保密级别
107 */
108 @ApiModelProperty(name = "mj", value = "保密级别")
109 private String mj;
110
111 /**
112 * 盒号
113 */
114 @ApiModelProperty(name = "hh", value = "盒号")
115 private String hh;
116
117 /**
118 * 存放位置
119 */
120 @ApiModelProperty(name = "cfwz", value = "存放位置")
121 private String cfwz;
122
123 /**
124 * 创建人
125 */
126 @ApiModelProperty(name = "cjr", value = "创建人")
127 private String cjr;
128
129 /**
130 * 创建日期
131 */
132 @ApiModelProperty(name = "cjrq", value = "创建日期")
133 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
134 private Date cjrq;
135
136 /**
137 * 核查人
138 */
139 @ApiModelProperty(name = "hcr", value = "核查人")
140 private String hcr;
141
142 /**
143 * 备注
144 */
145 @ApiModelProperty(name = "bz", value = "备注")
146 private String bz;
147
148 /**
149 * 扫描状态
150 */
151 @ApiModelProperty(name = "smzt", value = "扫描状态")
152 private Integer smzt;
153
154 /**
155 * 档案状态
156 */
157 @ApiModelProperty(name = "dazt", value = "档案状态")
158 private Integer dazt;
159
160 /**
161 * 存档机构编码
162 */
163 @ApiModelProperty(name = "cdjgbm", value = "存档机构编码")
164 private String cdjgbm;
165
166 /**
167 * 档案来源(1:不动产归档,2:存量档案补录)
168 */
169 @ApiModelProperty(name = "daly", value = "档案来源(1:不动产归档,2:存量档案补录)")
170 private String daly;
171
172
173 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 案卷基本信息列表VO
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="案卷基本信息列表VO")
22 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
23 public class DgArchivesListVO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 档案标识码
29 */
30 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
31 private String bsmArchives;
32
33 /**
34 * 案卷标题
35 */
36 @ApiModelProperty(name = "ajbt", value = "案卷标题")
37 private String ajbt;
38
39 /**
40 * 主题词
41 */
42 @ApiModelProperty(name = "ztc", value = "主题词")
43 private String ztc;
44
45 /**
46 * 分类号
47 */
48 @ApiModelProperty(name = "flh", value = "分类号")
49 private String flh;
50
51 /**
52 * 目录号
53 */
54 @ApiModelProperty(name = "mlh", value = "目录号")
55 private String mlh;
56
57 /**
58 * 案卷号
59 */
60 @ApiModelProperty(name = "ajh", value = "案卷号")
61 private String ajh;
62
63 /**
64 * 年度
65 */
66 @ApiModelProperty(name = "nd", value = "年度")
67 private Integer nd;
68
69 /**
70 * 件数
71 */
72 @ApiModelProperty(name = "js", value = "件数")
73 private Integer js;
74
75 /**
76 * 页数
77 */
78 @ApiModelProperty(name = "ys", value = "页数")
79 private Integer ys;
80
81 /**
82 * 保管期限
83 */
84 @ApiModelProperty(name = "bgqx", value = "保管期限")
85 private String bgqx;
86
87 /**
88 * 起始日期
89 */
90 @ApiModelProperty(name = "qsrq", value = "起始日期")
91 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
92 private Date qsrq;
93
94 /**
95 * 终止日期
96 */
97 @ApiModelProperty(name = "zzrq", value = "终止日期")
98 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
99 private Date zzrq;
100
101 /**
102 * 保密级别
103 */
104 @ApiModelProperty(name = "mj", value = "保密级别")
105 private String mj;
106
107 /**
108 * 盒号
109 */
110 @ApiModelProperty(name = "hh", value = "盒号")
111 private String hh;
112
113 /**
114 * 存放位置
115 */
116 @ApiModelProperty(name = "cfwz", value = "存放位置")
117 private String cfwz;
118
119 /**
120 * 创建人
121 */
122 @ApiModelProperty(name = "cjr", value = "创建人")
123 private String cjr;
124
125 /**
126 * 创建日期
127 */
128 @ApiModelProperty(name = "cjrq", value = "创建日期")
129 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
130 private Date cjrq;
131
132 /**
133 * 核查人
134 */
135 @ApiModelProperty(name = "hcr", value = "核查人")
136 private String hcr;
137
138 /**
139 * 备注
140 */
141 @ApiModelProperty(name = "bz", value = "备注")
142 private String bz;
143
144 /**
145 * 扫描状态
146 */
147 @ApiModelProperty(name = "smzt", value = "扫描状态")
148 private Integer smzt;
149
150 /**
151 * 档案状态
152 */
153 @ApiModelProperty(name = "dazt", value = "档案状态")
154 private Integer dazt;
155
156 /**
157 * 存档机构编码
158 */
159 @ApiModelProperty(name = "cdjgbm", value = "存档机构编码")
160 private String cdjgbm;
161
162 /**
163 * 档案来源(1:不动产归档,2:存量档案补录)
164 */
165 @ApiModelProperty(name = "daly", value = "档案来源(1:不动产归档,2:存量档案补录)")
166 private String daly;
167
168
169 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import com.pashanhoo.common.PageInfo;
10 import org.springframework.format.annotation.DateTimeFormat;
11
12 /**
13 * <p>
14 * 案卷基本信息列表查询请求实体
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @ApiModel(value="案卷基本信息列表查询请求实体")
23 //TODO 初始查询条件是全部,需要根据情况自行删减
24 public class DgArchivesSearchRequest extends PageInfo implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 档案标识码
30 */
31 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
32 private String bsmArchives;
33
34 /**
35 * 案卷标题
36 */
37 @ApiModelProperty(name = "ajbt", value = "案卷标题")
38 private String ajbt;
39
40 /**
41 * 主题词
42 */
43 @ApiModelProperty(name = "ztc", value = "主题词")
44 private String ztc;
45
46 /**
47 * 分类号
48 */
49 @ApiModelProperty(name = "flh", value = "分类号")
50 private String flh;
51
52 /**
53 * 目录号
54 */
55 @ApiModelProperty(name = "mlh", value = "目录号")
56 private String mlh;
57
58 /**
59 * 案卷号
60 */
61 @ApiModelProperty(name = "ajh", value = "案卷号")
62 private String ajh;
63
64 /**
65 * 年度
66 */
67 @ApiModelProperty(name = "nd", value = "年度")
68 private Integer nd;
69
70 /**
71 * 件数
72 */
73 @ApiModelProperty(name = "js", value = "件数")
74 private Integer js;
75
76 /**
77 * 页数
78 */
79 @ApiModelProperty(name = "ys", value = "页数")
80 private Integer ys;
81
82 /**
83 * 保管期限
84 */
85 @ApiModelProperty(name = "bgqx", value = "保管期限")
86 private String bgqx;
87
88 /**
89 * 起始日期
90 */
91 @ApiModelProperty(name = "qsrq", value = "起始日期")
92 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
93 private Date qsrq;
94
95 /**
96 * 终止日期
97 */
98 @ApiModelProperty(name = "zzrq", value = "终止日期")
99 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
100 private Date zzrq;
101
102 /**
103 * 保密级别
104 */
105 @ApiModelProperty(name = "mj", value = "保密级别")
106 private String mj;
107
108 /**
109 * 盒号
110 */
111 @ApiModelProperty(name = "hh", value = "盒号")
112 private String hh;
113
114 /**
115 * 存放位置
116 */
117 @ApiModelProperty(name = "cfwz", value = "存放位置")
118 private String cfwz;
119
120 /**
121 * 创建人
122 */
123 @ApiModelProperty(name = "cjr", value = "创建人")
124 private String cjr;
125
126 /**
127 * 创建日期
128 */
129 @ApiModelProperty(name = "cjrq", value = "创建日期")
130 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
131 private Date cjrq;
132
133 /**
134 * 核查人
135 */
136 @ApiModelProperty(name = "hcr", value = "核查人")
137 private String hcr;
138
139 /**
140 * 备注
141 */
142 @ApiModelProperty(name = "bz", value = "备注")
143 private String bz;
144
145 /**
146 * 扫描状态
147 */
148 @ApiModelProperty(name = "smzt", value = "扫描状态")
149 private Integer smzt;
150
151 /**
152 * 档案状态
153 */
154 @ApiModelProperty(name = "dazt", value = "档案状态")
155 private Integer dazt;
156
157 /**
158 * 存档机构编码
159 */
160 @ApiModelProperty(name = "cdjgbm", value = "存档机构编码")
161 private String cdjgbm;
162
163 /**
164 * 档案来源(1:不动产归档,2:存量档案补录)
165 */
166 @ApiModelProperty(name = "daly", value = "档案来源(1:不动产归档,2:存量档案补录)")
167 private String daly;
168
169
170 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import com.pashanhoo.common.PageInfo;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 import java.io.Serializable;
10
11 /**
12 * 档案查找请求实体
13 */
14 @Data
15 @EqualsAndHashCode(callSuper = false)
16 @ApiModel(value="档案查找请求实体")
17 public class SearchArchiveRequest extends PageInfo implements Serializable {
18
19 private static final long serialVersionUID = 1L;
20
21 /**
22 * 档案号
23 */
24 @ApiModelProperty(name = "ajh", value = "档案号")
25 private String ajh;
26
27 /**
28 * 目录号
29 */
30 @ApiModelProperty(name = "mlh", value = "目录号")
31 private String mlh;
32
33 /**
34 * 盒号
35 */
36 @ApiModelProperty(name = "hh", value = "盒号")
37 private String hh;
38
39 /**
40 * 档案状态
41 * (1:正在接收;2:正在补录;3:正在修改;4:在库;5:正在销毁;6:已销毁;7:正在借阅;8:已借阅)
42 */
43 @ApiModelProperty(name = "dazt", value = "档案状态.1:正在接收;2:正在补录;3:正在修改;4:在库;5:正在销毁;6:已销毁;7:正在借阅;8:已借阅")
44 private String dazt;
45
46 /**
47 * 业务号
48 */
49 @ApiModelProperty(name = "ywh", value = "业务号")
50 private String ywh;
51
52 /**
53 * 不动产权证号
54 */
55 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
56 private String bdcqzh;
57
58 /**
59 * 不动产单元号
60 */
61 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
62 private String bdcdyh;
63
64 /**
65 * 权利类型
66 */
67 @ApiModelProperty(name = "qllx", value = "权利类型")
68 private String qllx;
69
70 /**
71 * 权利人
72 */
73 @ApiModelProperty(name = "qlr",value = "权利人")
74 private String qlr;
75 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.io.Serializable;
9
10 /**
11 * 档案查找返回实体
12 */
13 @Data
14 @EqualsAndHashCode(callSuper = false)
15 @ApiModel(value="档案查找返回实体")
16 public class SearchArchiveVO implements Serializable {
17
18 private static final long serialVersionUID = 1L;
19
20 /**
21 * 序号
22 */
23 @ApiModelProperty(name = "xh", value = "序号")
24 private String xh;
25
26 /**
27 * 档案标识码
28 */
29 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
30 private String bsmArchives;
31
32 /**
33 * 档案状态
34 * (1:正在接收;2:正在补录;3:正在修改;4:在库;5:正在销毁;6:已销毁;7:正在借阅;8:已借阅)
35 */
36 @ApiModelProperty(name = "dazt", value = "档案状态.1:正在接收;2:正在补录;3:正在修改;4:在库;5:正在销毁;6:已销毁;7:正在借阅;8:已借阅")
37 private String dazt;
38
39 /**
40 * 档案来源
41 * 1:不动产归档.2:存量档案补录
42 */
43 @ApiModelProperty(name = "daly", value = "档案来源")
44 private String daly;
45
46 /**
47 * 档案号
48 */
49 @ApiModelProperty(name = "ajh", value = "档案号")
50 private String ajh;
51
52 /**
53 * 存放位置
54 */
55 @ApiModelProperty(name = "cfwz", value = "存放位置")
56 private String cfwz;
57
58 /**
59 * 盒号
60 */
61 @ApiModelProperty(name = "hh", value = "盒号")
62 private String hh;
63
64 /**
65 * 不动产权证号
66 */
67 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
68 private String bdcqzh;
69
70 /**
71 * 权利人
72 */
73 @ApiModelProperty(name = "qlr", value = "权利人")
74 private String qlr;
75
76 /**
77 * 义务人
78 */
79 @ApiModelProperty(name = "ywr", value = "义务人")
80 private String ywr;
81
82 /**
83 * 业务号
84 */
85 @ApiModelProperty(name = "ywh", value = "业务号")
86 private String ywh;
87
88 /**
89 * 不动产单元号
90 */
91 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
92 private String bdcdyh;
93
94 /**
95 * 权利类型
96 */
97 @ApiModelProperty(name = "qllx", value = "权利类型")
98 private String qllx;
99 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import java.io.Serializable;
4 import java.util.List;
5
6 import com.pashanhoo.bdcdy.entity.vo.UpdateDgBdcdyRequest;
7 import com.pashanhoo.business.entity.vo.UpdateDgBusinessRequest;
8 import io.swagger.annotations.ApiModel;
9 import io.swagger.annotations.ApiModelProperty;
10 import lombok.Data;
11 import lombok.EqualsAndHashCode;
12
13 /**
14 * <p>
15 * 档案信息,业务信息,不动产单元修改请求实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value = "档案信息,业务信息,不动产单元修改请求实体")
24 public class UpdateArchiveAndOtherInfoRequest implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 更新案卷基本信息
30 */
31 @ApiModelProperty(name = "updateDgArchivesRequest", value = "更新案卷基本信息")
32 private UpdateDgArchivesRequest updateDgArchivesRequest;
33
34 /**
35 * 更新业务信息
36 */
37 @ApiModelProperty(name = "updateDgBusinessRequest", value = "更新业务信息")
38 private UpdateDgBusinessRequest updateDgBusinessRequest;
39
40 /**
41 * 更新不动产单元信息
42 */
43 @ApiModelProperty(name = "updateDgBdcdyRequests", value = "更新不动产单元信息")
44 private List<UpdateDgBdcdyRequest> updateDgBdcdyRequests;
45 }
1 package com.pashanhoo.archive.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 案卷基本信息修改请求实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="案卷基本信息修改请求实体")
24 public class UpdateDgArchivesRequest implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 档案标识码
30 */
31 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
32 private String bsmArchives;
33
34 /**
35 * 案卷标题
36 */
37 @ApiModelProperty(name = "ajbt", value = "案卷标题")
38 private String ajbt;
39
40 /**
41 * 主题词
42 */
43 @ApiModelProperty(name = "ztc", value = "主题词")
44 private String ztc;
45
46 /**
47 * 分类号
48 */
49 @ApiModelProperty(name = "flh", value = "分类号")
50 private String flh;
51
52 /**
53 * 目录号
54 */
55 @ApiModelProperty(name = "mlh", value = "目录号")
56 private String mlh;
57
58 /**
59 * 案卷号
60 */
61 @ApiModelProperty(name = "ajh", value = "案卷号")
62 private String ajh;
63
64 /**
65 * 年度
66 */
67 @ApiModelProperty(name = "nd", value = "年度")
68 private Integer nd;
69
70 /**
71 * 件数
72 */
73 @ApiModelProperty(name = "js", value = "件数")
74 private Integer js;
75
76 /**
77 * 页数
78 */
79 @ApiModelProperty(name = "ys", value = "页数")
80 private Integer ys;
81
82 /**
83 * 保管期限
84 */
85 @ApiModelProperty(name = "bgqx", value = "保管期限")
86 private String bgqx;
87
88 /**
89 * 起始日期
90 */
91 @ApiModelProperty(name = "qsrq", value = "起始日期")
92 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
93 private Date qsrq;
94
95 /**
96 * 终止日期
97 */
98 @ApiModelProperty(name = "zzrq", value = "终止日期")
99 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
100 private Date zzrq;
101
102 /**
103 * 保密级别
104 */
105 @ApiModelProperty(name = "mj", value = "保密级别")
106 private String mj;
107
108 /**
109 * 盒号
110 */
111 @ApiModelProperty(name = "hh", value = "盒号")
112 private String hh;
113
114 /**
115 * 存放位置
116 */
117 @ApiModelProperty(name = "cfwz", value = "存放位置")
118 private String cfwz;
119
120 /**
121 * 创建人
122 */
123 @ApiModelProperty(name = "cjr", value = "创建人")
124 private String cjr;
125
126 /**
127 * 创建日期
128 */
129 @ApiModelProperty(name = "cjrq", value = "创建日期")
130 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
131 private Date cjrq;
132
133 /**
134 * 核查人
135 */
136 @ApiModelProperty(name = "hcr", value = "核查人")
137 private String hcr;
138
139 /**
140 * 备注
141 */
142 @ApiModelProperty(name = "bz", value = "备注")
143 private String bz;
144
145 /**
146 * 扫描状态
147 */
148 @ApiModelProperty(name = "smzt", value = "扫描状态")
149 private Integer smzt;
150
151 /**
152 * 档案状态
153 */
154 @ApiModelProperty(name = "dazt", value = "档案状态")
155 private Integer dazt;
156
157 /**
158 * 存档机构编码
159 */
160 @ApiModelProperty(name = "cdjgbm", value = "存档机构编码")
161 private String cdjgbm;
162
163 /**
164 * 档案来源(1:不动产归档,2:存量档案补录)
165 */
166 @ApiModelProperty(name = "daly", value = "档案来源(1:不动产归档,2:存量档案补录)")
167 private String daly;
168
169
170 }
1 package com.pashanhoo.archive.mapper;
2
3
4 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 import com.baomidou.mybatisplus.core.metadata.IPage;
6 import com.pashanhoo.archive.entity.DgArchivesDO;
7 import com.pashanhoo.archive.entity.vo.SearchArchiveRequest;
8 import com.pashanhoo.archive.entity.vo.SearchArchiveVO;
9 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogWithFileVO;
10 import com.pashanhoo.file.entity.vo.DgFileSearchRequest;
11 import org.apache.ibatis.annotations.Param;
12
13 import java.util.List;
14
15 /**
16 * <p>
17 * 案卷基本信息 Mapper 接口
18 * </p>
19 *
20 * @author
21 * @since 2021-11-05
22 */
23 public interface DgArchivesMapper extends BaseMapper<DgArchivesDO> {
24
25 boolean updateArchivesInfoByReceiveIdList(@Param("idList") List<String> idList,@Param("dazt") String dazt);
26
27 IPage<SearchArchiveVO> searchArchive(@Param("pageParam") IPage<SearchArchiveVO> pageParam, @Param("request") SearchArchiveRequest request);
28
29 /**
30 * 查询附件以及名称和排序
31 * @param request
32 * @return
33 */
34 List<DgArchivesCatalogWithFileVO> selectCatalogWithFile(@Param("request") DgFileSearchRequest request);
35 }
1 package com.pashanhoo.archive.service;
2
3 import com.baomidou.mybatisplus.core.metadata.IPage;
4 import com.baomidou.mybatisplus.extension.service.IService;
5 import com.pashanhoo.archive.entity.DgArchivesDO;
6 import com.pashanhoo.archive.entity.vo.*;
7 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
8 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogListVO;
9 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogWithFileVO;
10 import com.pashanhoo.catalog.entity.vo.UpdateDgArchivesCatalogRequest;
11 import com.pashanhoo.file.entity.vo.DgFileSearchRequest;
12
13 import java.util.List;
14
15 /**
16 * <p>
17 * 案卷基本信息 服务类
18 * </p>
19 *
20 * @author
21 * @since 2021-11-05
22 */
23 public interface DgArchivesService extends IService<DgArchivesDO> {
24 /**
25 * 新增记录
26 *
27 * @param request
28 * @return
29 */
30 boolean insertDgArchives(AddDgArchivesRequest request);
31
32 /**
33 * 查询案卷基本信息
34 *
35 * @param bsmArchive
36 * @return
37 */
38 ArchiveDetailAndCoverVO getDgArchivesDetailById(String bsmArchive);
39
40 /**
41 * 修改案卷基本信息,业务信息,不动产信息
42 *
43 * @param request
44 * @return
45 */
46 boolean updateDgArchivesReplenish(UpdateArchiveAndOtherInfoRequest request);
47
48 /**
49 * 根据条件进行列表查询
50 *
51 * @param request
52 * @return
53 */
54 Page searchDgArchivesList(DgArchivesSearchRequest request);
55
56 /**
57 * 根据档案标识码加载左侧菜单
58 *
59 * @param bsmArchives 档案标识码
60 * @return
61 */
62 List getArchiveLiftMenu(String bsmArchives);
63
64 /**
65 * 档案查找
66 *
67 * @param request
68 * @return
69 */
70 IPage<SearchArchiveVO> searchArchive(SearchArchiveRequest request);
71
72 /**
73 * 档案封皮查找
74 *
75 * @param bsmArchive
76 * @return
77 */
78 ArchiveDetailAndCoverVO searchArchivesCover(String bsmArchive);
79
80 /**
81 * 1.比对新增的记录数据库是否存在,如果不存在则新增
82 * 2.比对数据库的数据是否存在前端传递的集合中,不存在则删除,并且删除对应的电子附件数据
83 * 3.如果目录记录标识码与数据库一致,直接更新当前的记录
84 *
85 * @param requests
86 * @return
87 */
88 boolean updateCatalog(List<UpdateDgArchivesCatalogRequest> requests);
89
90 /**
91 * 根据条件进行列表查询
92 * @param request
93 * @return
94 */
95 List<DgArchivesCatalogWithFileVO> searchDgFileList(DgFileSearchRequest request);
96
97 /**
98 * 档案目录查找
99 * @param bsmArchive
100 * @return
101 */
102 List<DgArchivesCatalogListVO> searchCatalog(String bsmArchive);
103 }
1 package com.pashanhoo.archive.service.impl;
2
3 import cn.hutool.core.util.StrUtil;
4 import com.baomidou.mybatisplus.core.metadata.IPage;
5 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6 import com.pashanhoo.archive.entity.DgArchivesConverter;
7 import com.pashanhoo.archive.entity.DgArchivesDO;
8 import com.pashanhoo.archive.entity.vo.*;
9 import com.pashanhoo.archive.mapper.DgArchivesMapper;
10 import com.pashanhoo.archive.service.DgArchivesService;
11 import com.pashanhoo.bdcdy.entity.DgBdcdyConverter;
12 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
13 import com.pashanhoo.bdcdy.entity.vo.DgBdcdyDetailVO;
14 import com.pashanhoo.bdcdy.entity.vo.UpdateDgBdcdyRequest;
15 import com.pashanhoo.bdcdy.mapper.DgBdcdyMapper;
16 import com.pashanhoo.bdcdy.service.DgBdcdyService;
17 import com.pashanhoo.business.entity.DgBusinessConverter;
18 import com.pashanhoo.business.entity.DgBusinessDO;
19 import com.pashanhoo.business.entity.vo.DgBusinessDetailVO;
20 import com.pashanhoo.business.entity.vo.UpdateDgBusinessRequest;
21 import com.pashanhoo.business.service.DgBusinessService;
22 import com.pashanhoo.catalog.entity.DgArchivesCatalogConverter;
23 import com.pashanhoo.catalog.entity.DgArchivesCatalogDO;
24 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogListVO;
25 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogWithFileVO;
26 import com.pashanhoo.catalog.entity.vo.UpdateDgArchivesCatalogRequest;
27 import com.pashanhoo.catalog.service.DgArchivesCatalogService;
28 import com.pashanhoo.common.util.fileupload.MinioUtil;
29 import com.pashanhoo.file.entity.DgFileDO;
30 import com.pashanhoo.file.entity.vo.DgFileSearchRequest;
31 import com.pashanhoo.file.service.DgFileService;
32 import org.springframework.beans.factory.annotation.Autowired;
33 import org.springframework.stereotype.Service;
34
35 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
36 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
37 import org.springframework.transaction.annotation.Transactional;
38
39 import java.util.List;
40 import java.util.stream.Collectors;
41
42 /**
43 * <p>
44 * 案卷基本信息 服务实现类
45 * </p>
46 *
47 * @author
48 * @since 2021-11-05
49 */
50 @Service
51 public class DgArchivesServiceImpl extends ServiceImpl<DgArchivesMapper, DgArchivesDO> implements DgArchivesService {
52
53 @Autowired
54 private DgArchivesConverter dgarchivesConverter;
55
56 @Autowired
57 private DgArchivesMapper dgarchivesMapper;
58
59 @Autowired
60 private DgBdcdyService dgBdcdyService;
61
62 @Autowired
63 private DgBdcdyMapper dgBdcdyMapper;
64
65 @Autowired
66 private DgBdcdyConverter dgBdcdyConverter;
67
68 @Autowired
69 private DgBusinessService dgBusinessService;
70
71 @Autowired
72 private DgBusinessConverter dgBusinessConverter;
73
74 @Autowired
75 private DgArchivesCatalogService catalogService;
76
77 @Autowired
78 private DgArchivesCatalogConverter catalogConverter;
79
80 @Autowired
81 private DgFileService dgFileService;
82
83 @Autowired
84 private MinioUtil minioUtil;
85
86 /**
87 * 新增记录
88 *
89 * @param request
90 * @return
91 */
92 @Override
93 public boolean insertDgArchives(AddDgArchivesRequest request) {
94 DgArchivesDO dgarchivesDO = dgarchivesConverter.addRequest2DO(request);
95 return this.save(dgarchivesDO);
96 }
97
98 /**
99 * 查询案卷基本信息
100 *
101 * @param bsmArchive
102 * @return
103 */
104 @Override
105 public ArchiveDetailAndCoverVO getDgArchivesDetailById(String bsmArchive) {
106 ArchiveDetailAndCoverVO detailAndCoverVO = getCover(bsmArchive);
107 //查询业务信息
108 QueryWrapper<DgBusinessDO> businessWrapper = new QueryWrapper<>();
109 businessWrapper.lambda().eq(DgBusinessDO::getBsmArchives, bsmArchive);
110 DgBusinessDO businessDO = dgBusinessService.getOne(businessWrapper);
111 DgBusinessDetailVO dgBusinessDetailVO = dgBusinessConverter.do2DetailVO(businessDO);
112 detailAndCoverVO.setDgBusinessDetailVO(dgBusinessDetailVO);
113 return detailAndCoverVO;
114 }
115
116 /**
117 * 修改案卷基本信息,业务信息,不动产信息
118 *
119 * @param request
120 * @return
121 */
122 @Override
123 @Transactional(rollbackFor = Exception.class)
124 public boolean updateDgArchivesReplenish(UpdateArchiveAndOtherInfoRequest request) {
125
126 //修改案卷基本信息
127 UpdateDgArchivesRequest updateDgArchivesRequest = request.getUpdateDgArchivesRequest();
128 DgArchivesDO dgArchivesDO = dgarchivesConverter.updateRequest2DO(updateDgArchivesRequest);
129 String bsmArchives = dgArchivesDO.getBsmArchives();
130 this.updateById(dgArchivesDO);
131
132 //修改不动产信息,先删除.后插入
133 List<UpdateDgBdcdyRequest> updateDgBdcdyRequests = request.getUpdateDgBdcdyRequests();
134 List<DgBdcdyDO> dgBdcdyDOS = dgBdcdyConverter.voList2DoList(updateDgBdcdyRequests);
135 //删除
136 QueryWrapper<DgBdcdyDO> wrapper = new QueryWrapper<>();
137 wrapper.lambda().eq(DgBdcdyDO::getBsmArchives, bsmArchives);
138 dgBdcdyService.remove(wrapper);
139 //插入
140 dgBdcdyService.saveBatch(dgBdcdyDOS);
141
142 //修改业务信息
143 UpdateDgBusinessRequest updateDgBusinessRequest = request.getUpdateDgBusinessRequest();
144 DgBusinessDO dgBusinessDO = dgBusinessConverter.updateRequest2DO(updateDgBusinessRequest);
145 QueryWrapper<DgBusinessDO> queryWrapper = new QueryWrapper<>();
146 queryWrapper.lambda().eq(DgBusinessDO::getBsmArchives, bsmArchives);
147 return dgBusinessService.update(dgBusinessDO, queryWrapper);
148
149 }
150
151 /**
152 * 根据条件进行列表查询
153 *
154 * @param request
155 * @return
156 */
157 @Override
158 public Page searchDgArchivesList(DgArchivesSearchRequest request) {
159 Page<DgArchivesDO> pageParam = new Page<DgArchivesDO>(request.getCurrentPage(), request.getPageSize());
160 QueryWrapper<DgArchivesDO> wrapper = new QueryWrapper<>();
161 //设置默认排序
162 wrapper = "desc".equals(request.getSortOrder()) ? wrapper.orderByDesc(request.getSortField()) : wrapper.orderByAsc(request.getSortField());
163
164 //增加条件
165 // lt:less than 小于
166 // le:less than or equal to 小于等于
167 // eq:equal to 等于
168 // ne:not equal to 不等于
169 // ge:greater than or equal to 大于等于
170 // gt:greater than 大于
171 wrapper = "desc".equals(request.getSortOrder()) ? wrapper.orderByDesc(request.getSortField()) : wrapper.orderByAsc(request.getSortField());
172 wrapper.eq(request.getAjbt() != null, "AJBT", request.getAjbt());
173 wrapper.eq(request.getFlh() != null, "FLH", request.getFlh());
174 wrapper.eq(request.getMlh() != null, "MLH", request.getMlh());
175 wrapper.eq(request.getAjh() != null, "AJH", request.getAjh());
176 wrapper.eq(request.getNd() != null, "ND", request.getNd());
177 wrapper.eq(request.getDazt() != null, "DAZT", request.getDazt());
178 wrapper.eq(request.getMj() != null, "MJ", request.getMj());
179 wrapper.ge(request.getQsrq() != null, "QSRQ", request.getQsrq());
180 wrapper.le(request.getZzrq() != null, "ZZRQ", request.getZzrq());
181 wrapper.eq(request.getHh() != null, "HH", request.getHh());
182 wrapper.eq(request.getCfwz() != null, "CFWZ", request.getCfwz());
183 wrapper.eq(request.getZtc() != null, "ZTC", request.getZtc());
184 Page page = this.page(pageParam, wrapper);
185 //将查询出来的DO List转为 ListVO List并重新设置到page对象中,并返回page对象
186 return page.setRecords(dgarchivesConverter.doList2ListVOList(page.getRecords()));
187 }
188
189 /**
190 * 根据档案标识码加载左侧菜单
191 *
192 * @param bsmArchives 档案标识码
193 * @return
194 */
195 @Override
196 public List getArchiveLiftMenu(String bsmArchives) {
197 DgArchivesDO archivesDO = this.getById(bsmArchives);
198 Integer status = archivesDO.getDazt().intValue();
199
200 /*状态判断.如果状态为:1,2,3显示为不动产单元号
201 如果状态为:4,5,6,7,8显示为档案号
202 */
203 List<DgBdcdyDO> dgBdcdyDOS = null;
204 if (status.equals(1) || status.equals(2) || status.equals(3)) {
205 QueryWrapper<DgBdcdyDO> bdcdyWrapper = new QueryWrapper<>();
206 bdcdyWrapper.lambda().eq(DgBdcdyDO::getBsmArchives, bsmArchives);
207 dgBdcdyDOS = dgBdcdyMapper.selectList(bdcdyWrapper);
208 return dgBdcdyDOS;
209 }
210 return dgBdcdyDOS;
211 }
212
213 /**
214 * 档案查找
215 *
216 * @param request
217 * @return
218 */
219 @Override
220 public IPage<SearchArchiveVO> searchArchive(SearchArchiveRequest request) {
221
222 IPage<SearchArchiveVO> pageParam = new Page<>(request.getCurrentPage(), request.getPageSize());
223 return dgarchivesMapper.searchArchive(pageParam, request);
224 }
225
226 /**
227 * 档案封皮查找
228 *
229 * @param bsmArchive
230 * @return
231 */
232 @Override
233 public ArchiveDetailAndCoverVO searchArchivesCover(String bsmArchive) {
234
235 return getCover(bsmArchive);
236 }
237
238 /**
239 * 1.比对新增的记录数据库是否存在,如果不存在则新增
240 * 2.比对数据库的数据是否存在前端传递的集合中,不存在则删除,并且删除对应的电子附件数据
241 * 3.如果目录记录标识码与数据库一致,直接更新当前的记录
242 *
243 * @param requests
244 * @return
245 */
246 @Override
247 @Transactional(rollbackFor = Exception.class)
248 public boolean updateCatalog(List<UpdateDgArchivesCatalogRequest> requests) {
249
250 List<UpdateDgArchivesCatalogRequest> updateCatalogs = requests.stream().filter(item -> !StrUtil.isNullOrUndefined(item.getBsmCatalog())).collect(Collectors.toList());
251 List<UpdateDgArchivesCatalogRequest> addCatalogs = requests.stream().filter(item -> StrUtil.isNullOrUndefined(item.getBsmCatalog())).collect(Collectors.toList());
252
253 boolean flag = false;
254
255 //存量数据更新.
256 if (updateCatalogs.size() != 0) {
257 String bsmArchive = updateCatalogs.stream().map(UpdateDgArchivesCatalogRequest::getBsmArchives).findFirst().orElse(null);
258 QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>();
259 catalogWrapper.lambda().eq(DgArchivesCatalogDO::getBsmArchives, bsmArchive);
260 List<DgArchivesCatalogDO> catalogsAlreadyExist = catalogService.list(catalogWrapper);
261 //入参的存量数据小于数据库内数据,删除数据库内多余数据
262 if (updateCatalogs.size() < catalogsAlreadyExist.size()) {
263 List<String> updateBsmCatalogs = updateCatalogs.stream().map(UpdateDgArchivesCatalogRequest::getBsmCatalog).collect(Collectors.toList());
264 List<String> alreadyExistBsmCatalogs = catalogsAlreadyExist.stream().map(DgArchivesCatalogDO::getBsmCatalog).collect(Collectors.toList());
265 //过滤数据
266 List<String> deleteBsmCatalogs = alreadyExistBsmCatalogs.stream().filter(item -> !updateBsmCatalogs.contains(item)).collect(Collectors.toList());
267 //删除附件表数据
268 QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>();
269 fileWrapper.lambda().in(DgFileDO::getBsmCatalog, deleteBsmCatalogs);
270 dgFileService.remove(fileWrapper);
271 //删除目录表多余数据
272 catalogWrapper.lambda().in(DgArchivesCatalogDO::getBsmCatalog,deleteBsmCatalogs);
273 catalogService.remove(catalogWrapper);
274 }
275 List<DgArchivesCatalogDO> updateCatalogDOs = catalogConverter.updateList2DO(updateCatalogs);
276 flag = catalogService.updateBatchById(updateCatalogDOs);
277 }
278
279 if (addCatalogs.size() != 0) {
280 //新增数据
281 List<DgArchivesCatalogDO> addCatalogDOs = catalogConverter.updateList2DO(addCatalogs);
282 flag = catalogService.saveBatch(addCatalogDOs);
283 }
284 return flag;
285
286 }
287
288 /**
289 * 查找档案目录和对应的附件列表
290 * @param request
291 * @return
292 */
293 @Override
294 public List<DgArchivesCatalogWithFileVO> searchDgFileList(DgFileSearchRequest request) {
295
296 List<DgArchivesCatalogWithFileVO> fileListVOS = dgarchivesMapper.selectCatalogWithFile(request);
297
298 for (DgArchivesCatalogWithFileVO fileListVO : fileListVOS) {
299 for (DgFileDO dgFileDO : fileListVO.getDgFileDOS()) {
300 if (dgFileDO.getFjurl() != null) {
301 String previewUrl = minioUtil.getPreviewUrl(dgFileDO.getFjurl());
302 dgFileDO.setFjurl(previewUrl);
303 }
304 }
305 }
306 return fileListVOS;
307 }
308
309 /**
310 * 档案目录查找
311 *
312 * @param bsmArchive
313 * @return
314 */
315 @Override
316 public List<DgArchivesCatalogListVO> searchCatalog(String bsmArchive) {
317 QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>();
318 catalogWrapper.lambda().eq(DgArchivesCatalogDO::getBsmArchives, bsmArchive).orderByAsc(DgArchivesCatalogDO::getXh);
319 List<DgArchivesCatalogDO> list = catalogService.list(catalogWrapper);
320 return catalogConverter.doList2ListVOList(list);
321 }
322
323 private ArchiveDetailAndCoverVO getCover(String bsmArchive) {
324 DgArchivesDO archivesDO = this.getById(bsmArchive);
325 DgArchivesDetailVO dgArchivesDetailVO = dgarchivesConverter.do2DetailVO(archivesDO);
326
327 QueryWrapper<DgBdcdyDO> bdcdyWrapper = new QueryWrapper<>();
328 bdcdyWrapper.lambda().eq(DgBdcdyDO::getBsmArchives, bsmArchive);
329 List<DgBdcdyDO> bdcdyDOS = dgBdcdyService.list(bdcdyWrapper);
330 List<DgBdcdyDetailVO> bdcdyDetailVOList = dgBdcdyConverter.do2DetailVOList(bdcdyDOS);
331
332 ArchiveDetailAndCoverVO archiveDetailAndCoverVO = new ArchiveDetailAndCoverVO();
333 archiveDetailAndCoverVO.setDgArchivesDetailVO(dgArchivesDetailVO);
334 archiveDetailAndCoverVO.setDgBdcdyDetailVOList(bdcdyDetailVOList);
335 return archiveDetailAndCoverVO;
336 }
337 }
1 package com.pashanhoo.bdcdy.controller;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.bdcdy.entity.vo.AddDgBdcdyRequest;
5 import com.pashanhoo.bdcdy.entity.vo.UpdateDgBdcdyRequest;
6 import com.pashanhoo.bdcdy.entity.vo.DgBdcdySearchRequest;
7 import com.pashanhoo.bdcdy.service.DgBdcdyService;
8 import org.springframework.web.bind.annotation.RestController;
9 import org.springframework.web.bind.annotation.*;
10 import io.swagger.annotations.Api;
11 import io.swagger.annotations.ApiOperation;
12 import io.swagger.annotations.ApiParam;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import java.util.List;
15
16 /**
17 * <p>
18 * 档案不动产信息 前端控制器
19 * </p>
20 *
21 * @author
22 * @since 2021-11-05
23 */
24 @RestController
25 @RequestMapping("/system/dgBdcdy/")
26 @Api(tags = "档案不动产信息接口")
27 public class DgBdcdyController {
28 @Autowired
29 private DgBdcdyService dgbdcdyService;
30
31 @PostMapping("insertDgBdcdy")
32 @ApiOperation("新增档案不动产信息")
33 public Result insertDgBdcdy(@RequestBody AddDgBdcdyRequest request){
34 if(dgbdcdyService.insertDgBdcdy(request)){
35 return Result.ok();
36 }
37 return Result.error("新增失败");
38 }
39
40 @DeleteMapping("deleteDgBdcdyByIds")
41 @ApiOperation(value = "批量删除档案不动产信息")
42 public Result deleteDgBdcdyByIds(@ApiParam("档案不动产信息ID列表") @RequestParam(value = "idList") List<String> idList) {
43 if(dgbdcdyService.removeByIds(idList)) {
44 return Result.ok("删除成功");
45 }
46 return Result.error("删除失败");
47 }
48
49 @PutMapping("updateDgBdcdy")
50 @ApiOperation("修改档案不动产信息")
51 public Result updateDgBdcdy(@RequestBody UpdateDgBdcdyRequest request){
52 if(dgbdcdyService.updateDgBdcdy(request)) {
53 return Result.ok("修改成功");
54 }
55 return Result.error("修改失败");
56 }
57
58 @GetMapping("getDgBdcdyDetailById")
59 @ApiOperation(value = "读取明细")
60 public Result getDgBdcdyDetailById(@ApiParam("档案不动产信息ID") @RequestParam String id){
61 return Result.ok(dgbdcdyService.getDgBdcdyDetailById(id));
62 }
63
64 @PostMapping("search")
65 @ApiOperation(value = "根据条件进行列表查询")
66 public Result searchDgBdcdyList(@RequestBody DgBdcdySearchRequest request) {
67 //TODO 默认排序条件设置
68 request.defaultFillPageProp("","");
69 return Result.ok(dgbdcdyService.searchDgBdcdyList(request));
70 }
71 }
1 package com.pashanhoo.bdcdy.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.bdcdy.entity.vo.AddDgBdcdyRequest;
6 import com.pashanhoo.bdcdy.entity.vo.DgBdcdyDetailVO;
7 import com.pashanhoo.bdcdy.entity.vo.DgBdcdyListVO;
8 import com.pashanhoo.bdcdy.entity.vo.UpdateDgBdcdyRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgBdcdyConverter{
17 DgBdcdyDO addRequest2DO(AddDgBdcdyRequest request);
18
19 DgBdcdyDetailVO do2DetailVO(DgBdcdyDO dgbdcdyDO);
20
21 DgBdcdyDO updateRequest2DO(UpdateDgBdcdyRequest request);
22
23 DgBdcdyListVO do2ListVO(DgBdcdyDO dgbdcdyDO);
24
25 List<DgBdcdyListVO> doList2ListVOList(List<DgBdcdyDO> dgbdcdyDOList);
26
27 List<DgBdcdyDO> addRequestListDO(List<AddDgBdcdyRequest> request);
28
29 List<DgBdcdyDO> voList2DoList(List<UpdateDgBdcdyRequest> requests);
30
31 List<DgBdcdyDetailVO> do2DetailVOList(List<DgBdcdyDO> bdcdyDOS);
32 }
1 package com.pashanhoo.bdcdy.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import java.util.Date;
6 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableField;
8 import java.io.Serializable;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11
12 /**
13 * <p>
14 * 档案不动产信息
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @TableName("DG_BDCDY")
23 public class DgBdcdyDO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 单元标识码
29 */
30 @TableId(value = "BSM_BDCDY", type = IdType.UUID)
31 private String bsmBdcdy;
32
33 /**
34 * 档案标识码
35 */
36 @TableField("BSM_ARCHIVES")
37 private String bsmArchives;
38
39 /**
40 * 权利标识码
41 */
42 @TableField("BSM_QL")
43 private String bsmQl;
44
45 /**
46 * 不动产单元ID
47 */
48 @TableField("BDCDYID")
49 private String bdcdyid;
50
51 /**
52 * 不动产单元号
53 */
54 @TableField("BDCDYH")
55 private String bdcdyh;
56
57 /**
58 * 坐落
59 */
60 @TableField("ZL")
61 private String zl;
62
63 /**
64 * 权利人
65 */
66 @TableField("QLR")
67 private String qlr;
68
69 /**
70 * 权利人证件号
71 */
72 @TableField("ZJHM")
73 private String zjhm;
74
75 /**
76 * 义务人
77 */
78 @TableField("YWR")
79 private String ywr;
80
81 /**
82 * 不动产权证号
83 */
84 @TableField("BDCQZH")
85 private String bdcqzh;
86
87 /**
88 * 登记时间
89 */
90 @TableField("DJSJ")
91 private Date djsj;
92
93 /**
94 * 注销时间
95 */
96 @TableField("ZXSJ")
97 private Date zxsj;
98 /**
99 * 不动产单元类型
100 */
101 @TableField("BDCDYLX")
102 private String bdcdylx;
103 /**
104 * 是否挂接
105 */
106 @TableField("SFGJ")
107 private String sfgj;
108
109 }
1 package com.pashanhoo.bdcdy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 import javax.validation.constraints.NotEmpty;
12
13 /**
14 * <p>
15 * 档案不动产信息新增请求实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案不动产信息新增请求实体")
24 public class AddDgBdcdyRequest implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28
29 /**
30 * 档案标识码
31 */
32 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
33 private String bsmArchives;
34
35 /**
36 * 权利标识码
37 */
38 @NotEmpty(message = "权利标识码【bsmQl】不能为空")
39 @ApiModelProperty(name = "bsmQl", value = "权利标识码")
40 private String bsmQl;
41
42 /**
43 * 不动产单元ID
44 */
45 @NotEmpty(message = "不动产单元ID【bdcdyid】不能为空")
46 @ApiModelProperty(name = "bdcdyid", value = "不动产单元ID")
47 private String bdcdyid;
48
49 /**
50 * 不动产单元号
51 */
52 @NotEmpty(message = "不动产单元号【bdcdyh】不能为空")
53 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
54 private String bdcdyh;
55
56 /**
57 * 坐落
58 */
59 @NotEmpty(message = "坐落【zl】不能为空")
60 @ApiModelProperty(name = "zl", value = "坐落")
61 private String zl;
62
63 /**
64 * 权利人
65 */
66 @NotEmpty(message = "权利人【qlr】不能为空")
67 @ApiModelProperty(name = "qlr", value = "权利人")
68 private String qlr;
69
70 /**
71 * 权利人证件号
72 */
73 @NotEmpty(message = "权利人证件号【zjhm】不能为空")
74 @ApiModelProperty(name = "zjhm", value = "权利人证件号")
75 private String zjhm;
76
77 /**
78 * 义务人
79 */
80 @ApiModelProperty(name = "ywr", value = "义务人")
81 private String ywr;
82
83 /**
84 * 不动产权证号
85 */
86 @NotEmpty(message = "不动产权证号【bdcqzh】不能为空")
87 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
88 private String bdcqzh;
89
90 /**
91 * 登记时间
92 */
93 @NotEmpty(message = "登记时间【djsj】不能为空")
94 @ApiModelProperty(name = "djsj", value = "登记时间")
95 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
96 private Date djsj;
97
98 /**
99 * 注销时间
100 */
101 @ApiModelProperty(name = "zxsj", value = "注销时间")
102 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
103 private Date zxsj;
104 /**
105 * 不动产单元类型
106 */
107 @NotEmpty(message = "不动产单元类型【bdcdylx】不能为空")
108 @ApiModelProperty(name = "bdcdylx", value = "不动产单元类型")
109 private String bdcdylx;
110 /**
111 * 是否挂接
112 */
113 @ApiModelProperty(name = "sfgj", value = "是否挂接")
114 private String sfgj;
115
116 }
1 package com.pashanhoo.bdcdy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案不动产信息明细实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案不动产信息明细实体")
24 public class DgBdcdyDetailVO implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 单元标识码
30 */
31 @ApiModelProperty(name = "bsmBdcdy", value = "单元标识码")
32 private String bsmBdcdy;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 权利标识码
42 */
43 @ApiModelProperty(name = "bsmQl", value = "权利标识码")
44 private String bsmQl;
45
46 /**
47 * 不动产单元ID
48 */
49 @ApiModelProperty(name = "bdcdyid", value = "不动产单元ID")
50 private String bdcdyid;
51
52 /**
53 * 不动产单元号
54 */
55 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
56 private String bdcdyh;
57
58 /**
59 * 坐落
60 */
61 @ApiModelProperty(name = "zl", value = "坐落")
62 private String zl;
63
64 /**
65 * 权利人
66 */
67 @ApiModelProperty(name = "qlr", value = "权利人")
68 private String qlr;
69
70 /**
71 * 权利人证件号
72 */
73 @ApiModelProperty(name = "zjhm", value = "权利人证件号")
74 private String zjhm;
75
76 /**
77 * 义务人
78 */
79 @ApiModelProperty(name = "ywr", value = "义务人")
80 private String ywr;
81
82 /**
83 * 不动产权证号
84 */
85 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
86 private String bdcqzh;
87
88 /**
89 * 登记时间
90 */
91 @ApiModelProperty(name = "djsj", value = "登记时间")
92 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
93 private Date djsj;
94
95 /**
96 * 注销时间
97 */
98 @ApiModelProperty(name = "zxsj", value = "注销时间")
99 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
100 private Date zxsj;
101
102
103 }
1 package com.pashanhoo.bdcdy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案不动产信息列表VO
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案不动产信息列表VO")
22 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
23 public class DgBdcdyListVO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 单元标识码
29 */
30 @ApiModelProperty(name = "bsmBdcdy", value = "单元标识码")
31 private String bsmBdcdy;
32
33 /**
34 * 档案标识码
35 */
36 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
37 private String bsmArchives;
38
39 /**
40 * 权利标识码
41 */
42 @ApiModelProperty(name = "bsmQl", value = "权利标识码")
43 private String bsmQl;
44
45 /**
46 * 不动产单元ID
47 */
48 @ApiModelProperty(name = "bdcdyid", value = "不动产单元ID")
49 private String bdcdyid;
50
51 /**
52 * 不动产单元号
53 */
54 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
55 private String bdcdyh;
56
57 /**
58 * 坐落
59 */
60 @ApiModelProperty(name = "zl", value = "坐落")
61 private String zl;
62
63 /**
64 * 权利人
65 */
66 @ApiModelProperty(name = "qlr", value = "权利人")
67 private String qlr;
68
69 /**
70 * 权利人证件号
71 */
72 @ApiModelProperty(name = "zjhm", value = "权利人证件号")
73 private String zjhm;
74
75 /**
76 * 义务人
77 */
78 @ApiModelProperty(name = "ywr", value = "义务人")
79 private String ywr;
80
81 /**
82 * 不动产权证号
83 */
84 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
85 private String bdcqzh;
86
87 /**
88 * 登记时间
89 */
90 @ApiModelProperty(name = "djsj", value = "登记时间")
91 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
92 private Date djsj;
93
94 /**
95 * 注销时间
96 */
97 @ApiModelProperty(name = "zxsj", value = "注销时间")
98 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
99 private Date zxsj;
100
101
102 }
1 package com.pashanhoo.bdcdy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import com.pashanhoo.common.PageInfo;
10 import org.springframework.format.annotation.DateTimeFormat;
11
12 /**
13 * <p>
14 * 档案不动产信息列表查询请求实体
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @ApiModel(value="档案不动产信息列表查询请求实体")
23 //TODO 初始查询条件是全部,需要根据情况自行删减
24 public class DgBdcdySearchRequest extends PageInfo implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 单元标识码
30 */
31 @ApiModelProperty(name = "bsmBdcdy", value = "单元标识码")
32 private String bsmBdcdy;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 权利标识码
42 */
43 @ApiModelProperty(name = "bsmQl", value = "权利标识码")
44 private String bsmQl;
45
46 /**
47 * 不动产单元ID
48 */
49 @ApiModelProperty(name = "bdcdyid", value = "不动产单元ID")
50 private String bdcdyid;
51
52 /**
53 * 不动产单元号
54 */
55 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
56 private String bdcdyh;
57
58 /**
59 * 坐落
60 */
61 @ApiModelProperty(name = "zl", value = "坐落")
62 private String zl;
63
64 /**
65 * 权利人
66 */
67 @ApiModelProperty(name = "qlr", value = "权利人")
68 private String qlr;
69
70 /**
71 * 权利人证件号
72 */
73 @ApiModelProperty(name = "zjhm", value = "权利人证件号")
74 private String zjhm;
75
76 /**
77 * 义务人
78 */
79 @ApiModelProperty(name = "ywr", value = "义务人")
80 private String ywr;
81
82 /**
83 * 不动产权证号
84 */
85 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
86 private String bdcqzh;
87
88 /**
89 * 登记时间
90 */
91 @ApiModelProperty(name = "djsj", value = "登记时间")
92 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
93 private Date djsj;
94
95 /**
96 * 注销时间
97 */
98 @ApiModelProperty(name = "zxsj", value = "注销时间")
99 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
100 private Date zxsj;
101
102
103 }
1 package com.pashanhoo.bdcdy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案不动产信息修改请求实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案不动产信息修改请求实体")
24 public class UpdateDgBdcdyRequest implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 单元标识码
30 */
31 @ApiModelProperty(name = "bsmBdcdy", value = "单元标识码")
32 private String bsmBdcdy;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 权利标识码
42 */
43 @ApiModelProperty(name = "bsmQl", value = "权利标识码")
44 private String bsmQl;
45
46 /**
47 * 不动产单元ID
48 */
49 @ApiModelProperty(name = "bdcdyid", value = "不动产单元ID")
50 private String bdcdyid;
51
52 /**
53 * 不动产单元号
54 */
55 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
56 private String bdcdyh;
57
58 /**
59 * 坐落
60 */
61 @ApiModelProperty(name = "zl", value = "坐落")
62 private String zl;
63
64 /**
65 * 权利人
66 */
67 @ApiModelProperty(name = "qlr", value = "权利人")
68 private String qlr;
69
70 /**
71 * 权利人证件号
72 */
73 @ApiModelProperty(name = "zjhm", value = "权利人证件号")
74 private String zjhm;
75
76 /**
77 * 义务人
78 */
79 @ApiModelProperty(name = "ywr", value = "义务人")
80 private String ywr;
81
82 /**
83 * 不动产权证号
84 */
85 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
86 private String bdcqzh;
87
88 /**
89 * 登记时间
90 */
91 @ApiModelProperty(name = "djsj", value = "登记时间")
92 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
93 private Date djsj;
94
95 /**
96 * 注销时间
97 */
98 @ApiModelProperty(name = "zxsj", value = "注销时间")
99 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
100 private Date zxsj;
101
102
103 }
1 package com.pashanhoo.bdcdy.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
5
6 /**
7 * <p>
8 * 档案不动产信息 Mapper 接口
9 * </p>
10 *
11 * @author
12 * @since 2021-11-05
13 */
14 public interface DgBdcdyMapper extends BaseMapper<DgBdcdyDO> {
15
16 }
1 package com.pashanhoo.bdcdy.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
5 import com.pashanhoo.bdcdy.entity.vo.AddDgBdcdyRequest;
6 import com.pashanhoo.bdcdy.entity.vo.DgBdcdyDetailVO;
7 import com.pashanhoo.bdcdy.entity.vo.UpdateDgBdcdyRequest;
8 import com.pashanhoo.bdcdy.entity.vo.DgBdcdySearchRequest;
9 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
10 import com.pashanhoo.common.Result;
11
12 /**
13 * <p>
14 * 档案不动产信息 服务类
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 public interface DgBdcdyService extends IService<DgBdcdyDO> {
21 /**
22 * 新增记录
23 * @param request
24 * @return
25 */
26 boolean insertDgBdcdy(AddDgBdcdyRequest request);
27
28 /**
29 * 根据主键查询记录详情
30 * @param id
31 * @return
32 */
33 DgBdcdyDetailVO getDgBdcdyDetailById(String id);
34
35 /**
36 * 修改单条记录
37 * @param request
38 * @return
39 */
40 boolean updateDgBdcdy(UpdateDgBdcdyRequest request);
41
42 /**
43 * 根据条件进行列表查询
44 * @param request
45 * @return
46 */
47 Page searchDgBdcdyList(DgBdcdySearchRequest request);
48 /**
49 * 非主键修改单元信息
50 * @param request
51 * @return
52 */
53 Result updateDgBdcdyByArchive(UpdateDgBdcdyRequest request);
54 }
1 package com.pashanhoo.bdcdy.service.impl;
2
3 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 import com.pashanhoo.bdcdy.entity.DgBdcdyConverter;
5 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
6 import com.pashanhoo.bdcdy.entity.vo.AddDgBdcdyRequest;
7 import com.pashanhoo.bdcdy.entity.vo.DgBdcdyDetailVO;
8 import com.pashanhoo.bdcdy.entity.vo.UpdateDgBdcdyRequest;
9 import com.pashanhoo.bdcdy.entity.vo.DgBdcdySearchRequest;
10 import com.pashanhoo.bdcdy.mapper.DgBdcdyMapper;
11 import com.pashanhoo.bdcdy.service.DgBdcdyService;
12 import com.pashanhoo.common.Result;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import org.springframework.stereotype.Service;
15
16 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
17 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
18
19 /**
20 * <p>
21 * 档案不动产信息 服务实现类
22 * </p>
23 *
24 * @author
25 * @since 2021-11-05
26 */
27 @Service
28 public class DgBdcdyServiceImpl extends ServiceImpl<DgBdcdyMapper, DgBdcdyDO> implements DgBdcdyService {
29
30 @Autowired
31 private DgBdcdyConverter dgbdcdyConverter;
32
33 @Autowired
34 private DgBdcdyMapper dgbdcdyMapper;
35
36 /**
37 * 新增记录
38 * @param request
39 * @return
40 */
41 @Override
42 public boolean insertDgBdcdy(AddDgBdcdyRequest request) {
43 DgBdcdyDO dgbdcdyDO = dgbdcdyConverter.addRequest2DO(request);
44 return this.save(dgbdcdyDO);
45 }
46
47 /**
48 * 根据主键查询记录详情
49 * @param id
50 * @return
51 */
52 @Override
53 public DgBdcdyDetailVO getDgBdcdyDetailById(String id) {
54 DgBdcdyDO dgbdcdyDO = this.getById(id);
55 return dgbdcdyConverter.do2DetailVO(dgbdcdyDO);
56 }
57
58 /**
59 * 修改单条记录
60 * @param request
61 * @return
62 */
63 @Override
64 public boolean updateDgBdcdy(UpdateDgBdcdyRequest request) {
65 DgBdcdyDO dgbdcdyDO = dgbdcdyConverter.updateRequest2DO(request);
66 return this.updateById(dgbdcdyDO);
67 }
68
69 /**
70 * 根据条件进行列表查询
71 * @param request
72 * @return
73 */
74 @Override
75 public Page searchDgBdcdyList(DgBdcdySearchRequest request) {
76 Page<DgBdcdyDO> pageParam = new Page<DgBdcdyDO>(request.getCurrentPage(), request.getPageSize());
77 QueryWrapper<DgBdcdyDO> wrapper = new QueryWrapper<>();
78 //设置默认排序
79 wrapper = "desc".equals(request.getSortOrder()) ? wrapper.orderByDesc(request.getSortField()) : wrapper.orderByAsc(request.getSortField());
80
81 //TODO 根据当前情况设置wrapper条件
82
83 Page page = this.page(pageParam, wrapper);
84 //将查询出来的DO List转为 ListVO List并重新设置到page对象中,并返回page对象
85 return page.setRecords(dgbdcdyConverter.doList2ListVOList(page.getRecords()));
86 }
87
88 @Override
89 public Result updateDgBdcdyByArchive(UpdateDgBdcdyRequest request) {
90 QueryWrapper<DgBdcdyDO> wrapper = new QueryWrapper<>();
91 wrapper.eq(request.getBsmArchives()!=null && !"".equals(request.getBsmArchives()),"BSM_ARCHIVES",request.getBsmArchives());
92 DgBdcdyDO bdcdyDO=dgbdcdyConverter.updateRequest2DO(request);
93 dgbdcdyMapper.update(bdcdyDO,wrapper);
94 return Result.ok();
95 }
96
97 }
1 package com.pashanhoo.business.controller;
2
3
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
6 import com.pashanhoo.business.entity.vo.UpdateDgBusinessRequest;
7 import com.pashanhoo.business.entity.vo.DgBusinessSearchRequest;
8 import com.pashanhoo.business.service.DgBusinessService;
9 import org.springframework.web.bind.annotation.RestController;
10 import org.springframework.web.bind.annotation.*;
11 import io.swagger.annotations.Api;
12 import io.swagger.annotations.ApiOperation;
13 import io.swagger.annotations.ApiParam;
14 import org.springframework.beans.factory.annotation.Autowired;
15 import java.util.List;
16
17 /**
18 * <p>
19 * 档案业务信息 前端控制器
20 * </p>
21 *
22 * @author
23 * @since 2021-11-05
24 */
25 @RestController
26 @RequestMapping("/system/dgBusiness/")
27 @Api(tags = "档案业务信息接口")
28 public class DgBusinessController {
29 @Autowired
30 private DgBusinessService dgbusinessService;
31
32 @PostMapping("insertDgBusiness")
33 @ApiOperation("新增档案业务信息")
34 public Result insertDgBusiness(@RequestBody AddDgBusinessRequest request){
35 if(dgbusinessService.insertDgBusiness(request)){
36 return Result.ok();
37 }
38 return Result.error("新增失败");
39 }
40
41 @DeleteMapping("deleteDgBusinessByIds")
42 @ApiOperation(value = "批量删除档案业务信息")
43 public Result deleteDgBusinessByIds(@ApiParam("档案业务信息ID列表") @RequestParam(value = "idList") List<String> idList) {
44 if(dgbusinessService.removeByIds(idList)) {
45 return Result.ok("删除成功");
46 }
47 return Result.error("删除失败");
48 }
49
50 @PutMapping("updateDgBusiness")
51 @ApiOperation("修改档案业务信息")
52 public Result updateDgBusiness(@RequestBody UpdateDgBusinessRequest request){
53 if(dgbusinessService.updateDgBusiness(request)) {
54 return Result.ok("修改成功");
55 }
56 return Result.error("修改失败");
57 }
58
59 @GetMapping("getDgBusinessDetailById")
60 @ApiOperation(value = "读取明细")
61 public Result getDgBusinessDetailById(@ApiParam("档案业务信息ID") @RequestParam String id){
62 return Result.ok(dgbusinessService.getDgBusinessDetailById(id));
63 }
64
65 @PostMapping("search")
66 @ApiOperation(value = "根据条件进行列表查询")
67 public Result searchDgBusinessList(@RequestBody DgBusinessSearchRequest request) {
68 //TODO 默认排序条件设置
69 request.defaultFillPageProp("","");
70 return Result.ok(dgbusinessService.searchDgBusinessList(request));
71 }
72 }
1 package com.pashanhoo.business.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
6 import com.pashanhoo.business.entity.vo.DgBusinessDetailVO;
7 import com.pashanhoo.business.entity.vo.DgBusinessListVO;
8 import com.pashanhoo.business.entity.vo.UpdateDgBusinessRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgBusinessConverter{
17 DgBusinessDO addRequest2DO(AddDgBusinessRequest request);
18
19 DgBusinessDetailVO do2DetailVO(DgBusinessDO dgbusinessDO);
20
21 DgBusinessDO updateRequest2DO(UpdateDgBusinessRequest request);
22
23 DgBusinessListVO do2ListVO(DgBusinessDO dgbusinessDO);
24
25 List<DgBusinessListVO> doList2ListVOList(List<DgBusinessDO> dgbusinessDOList);
26 }
1 package com.pashanhoo.business.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import java.io.Serializable;
8 import java.util.Date;
9
10 import io.swagger.annotations.ApiModelProperty;
11 import lombok.Data;
12 import lombok.EqualsAndHashCode;
13
14 /**
15 * <p>
16 * 档案业务信息
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 @Data
23 @EqualsAndHashCode(callSuper = false)
24 @TableName("DG_BUSINESS")
25 public class DgBusinessDO implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28
29 /**
30 * 业务标识码
31 */
32 @TableId(value = "BSM_BUSINESS", type = IdType.UUID)
33 private String bsmBusiness;
34
35 /**
36 * 档案标识码
37 */
38 @TableField("BSM_ARCHIVES")
39 private String bsmArchives;
40
41 /**
42 * 业务号
43 */
44 @TableField("YWH")
45 private String ywh;
46
47 /**
48 * 登记类型
49 */
50 @TableField("DJLX")
51 private String djlx;
52
53 /**
54 * 权利类型
55 */
56 @TableField("QLLX")
57 private String qllx;
58
59 /**
60 * 登记机构编码
61 */
62 @TableField("DJJGBM")
63 private String djjgbm;
64
65 /**
66 * 登记机构名称
67 */
68 @TableField("DJJGMC")
69 private String djjgmc;
70
71 /**
72 * 登记业务名称
73 */
74 @TableField("DJYWMC")
75 private String djywmc;
76
77 /**
78 * 注销业务号
79 */
80 @TableField("ZXYWH")
81 private String zxywh;
82 /**
83 * 注销类型
84 */
85 @TableField("ZXLX")
86 private String zxlx;
87
88 /**
89 * 收件时间
90 */
91 @TableField("SJSJ")
92 private Date sjsj;
93 /**
94 * 收件人员
95 */
96 @TableField("SJRY")
97 private String sjry;
98 /**
99 * 原业务标识码
100 */
101 @TableField("BSM_YW")
102 private String bsmYw;
103 }
1 package com.pashanhoo.business.entity.vo;
2
3 import java.io.Serializable;
4 import java.util.Date;
5
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 import javax.validation.constraints.NotEmpty;
14
15 /**
16 * <p>
17 * 档案业务信息新增请求实体
18 * </p>
19 *
20 * @author
21 * @since 2021-11-05
22 */
23 @Data
24 @EqualsAndHashCode(callSuper = false)
25 @ApiModel(value="档案业务信息新增请求实体")
26 public class AddDgBusinessRequest implements Serializable {
27
28 private static final long serialVersionUID = 1L;
29
30
31 /**
32 * 档案标识码
33 */
34 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
35 private String bsmArchives;
36
37 /**
38 * 业务号
39 */
40 @NotEmpty(message = "业务号【ywh】不能为空")
41 @ApiModelProperty(name = "ywh", value = "业务号")
42 private String ywh;
43
44 /**
45 * 登记类型
46 */
47 @NotEmpty(message = "登记类型【djlx】不能为空")
48 @ApiModelProperty(name = "djlx", value = "登记类型")
49 private String djlx;
50
51 /**
52 * 权利类型
53 */
54 @NotEmpty(message = "权利类型【qllx】不能为空")
55 @ApiModelProperty(name = "qllx", value = "权利类型")
56 private String qllx;
57
58 /**
59 * 登记机构编码
60 */
61 @NotEmpty(message = "登记机构编码【djjgbm】不能为空")
62 @ApiModelProperty(name = "djjgbm", value = "登记机构编码")
63 private String djjgbm;
64
65 /**
66 * 登记机构名称
67 */
68 @NotEmpty(message = "登记机构名称【djjgmc】不能为空")
69 @ApiModelProperty(name = "djjgmc", value = "登记机构名称")
70 private String djjgmc;
71 /**
72 * 注销业务号
73 */
74 @ApiModelProperty(name = "zxywh", value = "注销业务号")
75 private String zxywh;
76 /**
77 * 注销类型
78 */
79 @ApiModelProperty(name = "zxlx", value = "注销类型")
80 private String zxlx;
81 /**
82 * 收件时间
83 */
84 @NotEmpty(message = "收件时间【sjsj】不能为空")
85 @ApiModelProperty(name = "sjsj", value = "收件时间")
86 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
87 private Date sjsj;
88
89 /**
90 * 收件人员
91 */
92 @NotEmpty(message = "收件人员【sjry】不能为空")
93 @ApiModelProperty(name = "sjry", value = "收件人员")
94 private String sjry;
95
96 /**
97 * 原业务标识码
98 */
99 @NotEmpty(message = "原业务标识码【bsmYw】不能为空")
100 @ApiModelProperty(name = "bsmYw", value = "原业务标识码")
101 private String bsmYw;
102 }
1 package com.pashanhoo.business.entity.vo;
2
3 import java.io.Serializable;
4 import java.util.Date;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案业务信息明细实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案业务信息明细实体")
24 public class DgBusinessDetailVO implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 业务标识码
30 */
31 @ApiModelProperty(name = "bsmBusiness", value = "业务标识码")
32 private String bsmBusiness;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 业务号
42 */
43 @ApiModelProperty(name = "ywh", value = "业务号")
44 private String ywh;
45
46 /**
47 * 登记类型
48 */
49 @ApiModelProperty(name = "djlx", value = "登记类型")
50 private String djlx;
51
52 /**
53 * 权利类型
54 */
55 @ApiModelProperty(name = "qllx", value = "权利类型")
56 private String qllx;
57
58 /**
59 * 登记机构编码
60 */
61 @ApiModelProperty(name = "djjgbm", value = "登记机构编码")
62 private String djjgbm;
63
64 /**
65 * 登记机构名称
66 */
67 @ApiModelProperty(name = "djjgmc", value = "登记机构名称")
68 private String djjgmc;
69
70
71 /**
72 * 登记业务名称
73 */
74 @ApiModelProperty(name = "djywmc", value = "登记业务名称")
75 private String djywmc;
76
77 /**
78 * 收件时间
79 */
80 @ApiModelProperty(name = "sjsj", value = "收件时间")
81 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
82 private Date sjsj;
83
84 /**
85 * 注销业务号
86 */
87 @ApiModelProperty(name = "zxywh", value = "注销业务号")
88 private String zxywh;
89
90 /**
91 * 注销类型
92 */
93 @ApiModelProperty(name = "zxlx", value = "注销类型")
94 private String zxlx;
95
96 /**
97 * 收件人员
98 */
99 @ApiModelProperty(name = "sjry", value = "收件人员")
100 private String sjry;
101
102 /**
103 * 原业务标识码
104 */
105 @ApiModelProperty(name = "bsmYw", value = "原业务标识码")
106 private String bsmYw;
107 }
1 package com.pashanhoo.business.entity.vo;
2
3 import java.io.Serializable;
4 import java.util.Date;
5
6 import io.swagger.annotations.ApiModel;
7 import io.swagger.annotations.ApiModelProperty;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10 import org.springframework.format.annotation.DateTimeFormat;
11
12 /**
13 * <p>
14 * 档案业务信息列表VO
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @ApiModel(value="档案业务信息列表VO")
23 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
24 public class DgBusinessListVO implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 业务标识码
30 */
31 @ApiModelProperty(name = "bsmBusiness", value = "业务标识码")
32 private String bsmBusiness;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 业务号
42 */
43 @ApiModelProperty(name = "ywh", value = "业务号")
44 private String ywh;
45
46 /**
47 * 登记类型
48 */
49 @ApiModelProperty(name = "djlx", value = "登记类型")
50 private String djlx;
51
52 /**
53 * 权利类型
54 */
55 @ApiModelProperty(name = "qllx", value = "权利类型")
56 private String qllx;
57
58 /**
59 * 登记机构编码
60 */
61 @ApiModelProperty(name = "djjgbm", value = "登记机构编码")
62 private String djjgbm;
63
64 /**
65 * 登记机构名称
66 */
67 @ApiModelProperty(name = "djjgmc", value = "登记机构名称")
68 private String djjgmc;
69
70
71 /**
72 * 登记业务名称
73 */
74 @ApiModelProperty(name = "djywmc", value = "登记业务名称")
75 private String djywmc;
76
77 /**
78 * 收件时间
79 */
80 @ApiModelProperty(name = "sjsj", value = "收件时间")
81 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
82 private Date sjsj;
83
84 /**
85 * 注销业务号
86 */
87 @ApiModelProperty(name = "zxywh", value = "注销业务号")
88 private String zxywh;
89
90 /**
91 * 注销类型
92 */
93 @ApiModelProperty(name = "zxlx", value = "注销类型")
94 private String zxlx;
95
96 /**
97 * 收件人员
98 */
99 @ApiModelProperty(name = "sjry", value = "收件人员")
100 private String sjry;
101
102 /**
103 * 原业务标识码
104 */
105 @ApiModelProperty(name = "bsmYw", value = "原业务标识码")
106 private String bsmYw;
107 }
1 package com.pashanhoo.business.entity.vo;
2
3 import java.io.Serializable;
4 import java.util.Date;
5
6 import io.swagger.annotations.ApiModel;
7 import io.swagger.annotations.ApiModelProperty;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10 import com.pashanhoo.common.PageInfo;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案业务信息列表查询请求实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案业务信息列表查询请求实体")
24 public class DgBusinessSearchRequest extends PageInfo implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 业务标识码
30 */
31 @ApiModelProperty(name = "bsmBusiness", value = "业务标识码")
32 private String bsmBusiness;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 业务号
42 */
43 @ApiModelProperty(name = "ywh", value = "业务号")
44 private String ywh;
45
46 /**
47 * 登记类型
48 */
49 @ApiModelProperty(name = "djlx", value = "登记类型")
50 private String djlx;
51
52 /**
53 * 权利类型
54 */
55 @ApiModelProperty(name = "qllx", value = "权利类型")
56 private String qllx;
57
58 /**
59 * 登记机构编码
60 */
61 @ApiModelProperty(name = "djjgbm", value = "登记机构编码")
62 private String djjgbm;
63
64 /**
65 * 登记机构名称
66 */
67 @ApiModelProperty(name = "djjgmc", value = "登记机构名称")
68 private String djjgmc;
69 /**
70 * 注销业务号
71 */
72 @ApiModelProperty(name = "zxywh", value = "注销业务号")
73 private String zxywh;
74 /**
75 * 注销类型
76 */
77 @ApiModelProperty(name = "zxlx", value = "注销类型")
78 private String zxlx;
79
80 /**
81 * 收件人员
82 */
83 @ApiModelProperty(name = "sjry", value = "收件人员")
84 private String sjry;
85
86 /**
87 * 登记业务名称
88 */
89 @ApiModelProperty(name = "djywmc", value = "登记业务名称")
90 private String djywmc;
91
92 /**
93 * 收件时间
94 */
95 @ApiModelProperty(name = "sjsj", value = "收件时间")
96 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
97 private Date sjsj;
98
99 /**
100 * 原业务标识码
101 */
102 @ApiModelProperty(name = "bsmYw", value = "原业务标识码")
103 private String bsmYw;
104 }
1 package com.pashanhoo.business.entity.vo;
2
3 import java.io.Serializable;
4 import java.util.Date;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案业务信息修改请求实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案业务信息修改请求实体")
24 public class UpdateDgBusinessRequest implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 业务标识码
30 */
31 @ApiModelProperty(name = "bsmBusiness", value = "业务标识码")
32 private String bsmBusiness;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 业务号
42 */
43 @ApiModelProperty(name = "ywh", value = "业务号")
44 private String ywh;
45
46 /**
47 * 登记类型
48 */
49 @ApiModelProperty(name = "djlx", value = "登记类型")
50 private String djlx;
51
52 /**
53 * 权利类型
54 */
55 @ApiModelProperty(name = "qllx", value = "权利类型")
56 private String qllx;
57
58 /**
59 * 登记机构编码
60 */
61 @ApiModelProperty(name = "djjgbm", value = "登记机构编码")
62 private String djjgbm;
63
64 /**
65 * 登记机构名称
66 */
67 @ApiModelProperty(name = "djjgmc", value = "登记机构名称")
68 private String djjgmc;
69
70
71 /**
72 * 登记业务名称
73 */
74 @ApiModelProperty(name = "djywmc", value = "登记业务名称")
75 private String djywmc;
76
77 /**
78 * 收件时间
79 */
80 @ApiModelProperty(name = "sjsj", value = "收件时间")
81 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
82 private Date sjsj;
83
84 /**
85 * 注销业务号
86 */
87 @ApiModelProperty(name = "zxywh", value = "注销业务号")
88 private String zxywh;
89
90 /**
91 * 注销类型
92 */
93 @ApiModelProperty(name = "zxlx", value = "注销类型")
94 private String zxlx;
95
96 /**
97 * 收件人员
98 */
99 @ApiModelProperty(name = "sjry", value = "收件人员")
100 private String sjry;
101
102 /**
103 * 原业务标识码
104 */
105 @ApiModelProperty(name = "bsmYw", value = "原业务标识码")
106 private String bsmYw;
107 }
1 package com.pashanhoo.business.mapper;
2
3
4 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 import com.pashanhoo.business.entity.DgBusinessDO;
6
7 /**
8 * <p>
9 * 档案业务信息 Mapper 接口
10 * </p>
11 *
12 * @author
13 * @since 2021-11-05
14 */
15 public interface DgBusinessMapper extends BaseMapper<DgBusinessDO> {
16
17 }
1 package com.pashanhoo.business.service;
2
3
4 import com.pashanhoo.business.entity.DgBusinessDO;
5 import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
6 import com.pashanhoo.business.entity.vo.DgBusinessDetailVO;
7 import com.pashanhoo.business.entity.vo.UpdateDgBusinessRequest;
8 import com.pashanhoo.business.entity.vo.DgBusinessSearchRequest;
9 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
10 import com.baomidou.mybatisplus.extension.service.IService;
11
12 /**
13 * <p>
14 * 档案业务信息 服务类
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 public interface DgBusinessService extends IService<DgBusinessDO> {
21 /**
22 * 新增记录
23 * @param request
24 * @return
25 */
26 boolean insertDgBusiness(AddDgBusinessRequest request);
27
28 /**
29 * 根据主键查询记录详情
30 * @param id
31 * @return
32 */
33 DgBusinessDetailVO getDgBusinessDetailById(String id);
34
35 /**
36 * 修改单条记录
37 * @param request
38 * @return
39 */
40 boolean updateDgBusiness(UpdateDgBusinessRequest request);
41
42 /**
43 * 根据条件进行列表查询
44 * @param request
45 * @return
46 */
47 Page searchDgBusinessList(DgBusinessSearchRequest request);
48
49 /**
50 *
51 * @param request
52 * @return
53 */
54 DgBusinessDO searchDgBusiness(DgBusinessSearchRequest request);
55 }
1 package com.pashanhoo.business.service.impl;
2
3 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 import com.pashanhoo.business.entity.DgBusinessConverter;
5 import com.pashanhoo.business.entity.DgBusinessDO;
6 import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
7 import com.pashanhoo.business.entity.vo.DgBusinessDetailVO;
8 import com.pashanhoo.business.entity.vo.UpdateDgBusinessRequest;
9 import com.pashanhoo.business.entity.vo.DgBusinessSearchRequest;
10 import com.pashanhoo.business.mapper.DgBusinessMapper;
11 import com.pashanhoo.business.service.DgBusinessService;
12 import org.springframework.beans.factory.annotation.Autowired;
13 import org.springframework.stereotype.Service;
14
15 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
16 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
17
18 /**
19 * <p>
20 * 档案业务信息 服务实现类
21 * </p>
22 *
23 * @author
24 * @since 2021-11-05
25 */
26 @Service
27 public class DgBusinessServiceImpl extends ServiceImpl<DgBusinessMapper, DgBusinessDO> implements DgBusinessService {
28
29 @Autowired
30 private DgBusinessConverter dgbusinessConverter;
31
32 @Autowired
33 private DgBusinessMapper dgbusinessMapper;
34
35 /**
36 * 新增记录
37 * @param request
38 * @return
39 */
40 @Override
41 public boolean insertDgBusiness(AddDgBusinessRequest request) {
42 DgBusinessDO dgbusinessDO = dgbusinessConverter.addRequest2DO(request);
43 return this.save(dgbusinessDO);
44 }
45
46 /**
47 * 根据主键查询记录详情
48 * @param id
49 * @return
50 */
51 @Override
52 public DgBusinessDetailVO getDgBusinessDetailById(String id) {
53 DgBusinessDO dgbusinessDO = this.getById(id);
54 return dgbusinessConverter.do2DetailVO(dgbusinessDO);
55 }
56
57 /**
58 * 修改单条记录
59 * @param request
60 * @return
61 */
62 @Override
63 public boolean updateDgBusiness(UpdateDgBusinessRequest request) {
64 DgBusinessDO dgbusinessDO = dgbusinessConverter.updateRequest2DO(request);
65 return this.updateById(dgbusinessDO);
66 }
67
68 /**
69 * 根据条件进行列表查询
70 * @param request
71 * @return
72 */
73 @Override
74 public Page searchDgBusinessList(DgBusinessSearchRequest request) {
75 Page<DgBusinessDO> pageParam = new Page<DgBusinessDO>(request.getCurrentPage(), request.getPageSize());
76 QueryWrapper<DgBusinessDO> wrapper = new QueryWrapper<>();
77 //设置默认排序
78 wrapper = "desc".equals(request.getSortOrder()) ? wrapper.orderByDesc(request.getSortField()) : wrapper.orderByAsc(request.getSortField());
79
80
81 Page page = this.page(pageParam, wrapper);
82 //将查询出来的DO List转为 ListVO List并重新设置到page对象中,并返回page对象
83 return page.setRecords(dgbusinessConverter.doList2ListVOList(page.getRecords()));
84 }
85
86 @Override
87 public DgBusinessDO searchDgBusiness(DgBusinessSearchRequest request) {
88 QueryWrapper<DgBusinessDO> wrapper = new QueryWrapper<>();
89 wrapper.eq(request.getYwh()!=null && !"".equals(request.getYwh()),"YWH",request.getYwh());
90 wrapper.eq(request.getZxywh()!=null && !"".equals(request.getZxywh()),"ZXYWH",request.getZxywh());
91 DgBusinessDO businessDO= dgbusinessMapper.selectOne(wrapper);
92 return businessDO;
93 }
94
95 }
1 package com.pashanhoo.catalog.controller;
2
3 import com.pashanhoo.catalog.entity.vo.AddDgArchivesCatalogRequest;
4 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogListVO;
5 import com.pashanhoo.catalog.entity.vo.UpdateDgArchivesCatalogRequest;
6 import com.pashanhoo.catalog.service.DgArchivesCatalogService;
7 import com.pashanhoo.common.Result;
8 import org.springframework.web.bind.annotation.RestController;
9 import org.springframework.web.bind.annotation.*;
10 import io.swagger.annotations.Api;
11 import io.swagger.annotations.ApiOperation;
12 import io.swagger.annotations.ApiParam;
13 import org.springframework.beans.factory.annotation.Autowired;
14
15 import java.util.List;
16
17 /**
18 * <p>
19 * 档案目录信息 前端控制器
20 * </p>
21 *
22 * @author
23 * @since 2021-11-05
24 */
25 @RestController
26 @RequestMapping("/system/dgArchivesCatalog/")
27 @Api(tags = "档案目录信息接口")
28 public class DgArchivesCatalogController {
29 @Autowired
30 private DgArchivesCatalogService dgarchivescatalogService;
31
32 @PostMapping("insertDgArchivesCatalog")
33 @ApiOperation("新增档案目录信息")
34 public Result insertDgArchivesCatalog(@RequestBody AddDgArchivesCatalogRequest request){
35 if(dgarchivescatalogService.insertDgArchivesCatalog(request)){
36 return Result.ok();
37 }
38 return Result.error("新增失败");
39 }
40
41 @DeleteMapping("deleteDgArchivesCatalogByIds")
42 @ApiOperation(value = "批量删除档案目录信息")
43 public Result deleteDgArchivesCatalogByIds(@ApiParam("档案目录信息ID列表") @RequestParam(value = "idList") List<String> idList) {
44 if(dgarchivescatalogService.removeByIds(idList)) {
45 return Result.ok("删除成功");
46 }
47 return Result.error("删除失败");
48 }
49
50 @PutMapping("updateDgArchivesCatalog")
51 @ApiOperation("修改档案目录信息")
52 public Result updateDgArchivesCatalog(@RequestBody UpdateDgArchivesCatalogRequest request){
53 if(dgarchivescatalogService.updateDgArchivesCatalog(request)) {
54 return Result.ok("修改成功");
55 }
56 return Result.error("修改失败");
57 }
58
59 @GetMapping("getDgArchivesCatalogDetailById")
60 @ApiOperation(value = "读取明细")
61 public Result getDgArchivesCatalogDetailById(@ApiParam("档案目录信息ID") @RequestParam String id){
62 return Result.ok(dgarchivescatalogService.getDgArchivesCatalogDetailById(id));
63 }
64
65 @PostMapping("search")
66 @ApiOperation(value = "获取档案目录和不动产信息")
67 public Result<List<DgArchivesCatalogListVO>> searchDgArchivesCatalogList(@ApiParam("档案标识码集合") @RequestBody List<String> bsmArchives) {
68 return Result.ok(dgarchivescatalogService.searchDgArchivesCatalogList(bsmArchives));
69 }
70 }
1 package com.pashanhoo.catalog.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.catalog.entity.vo.AddDgArchivesCatalogRequest;
6 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogDetailVO;
7 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogListVO;
8 import com.pashanhoo.catalog.entity.vo.UpdateDgArchivesCatalogRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgArchivesCatalogConverter{
17 DgArchivesCatalogDO addRequest2DO(AddDgArchivesCatalogRequest request);
18
19 DgArchivesCatalogDetailVO do2DetailVO(DgArchivesCatalogDO dgarchivescatalogDO);
20
21 DgArchivesCatalogDO updateRequest2DO(UpdateDgArchivesCatalogRequest request);
22
23 DgArchivesCatalogListVO do2ListVO(DgArchivesCatalogDO dgarchivescatalogDO);
24
25 List<DgArchivesCatalogListVO> doList2ListVOList(List<DgArchivesCatalogDO> dgarchivescatalogDOList);
26
27 List<DgArchivesCatalogDO> addcataListDO(List<AddDgArchivesCatalogRequest> request);
28
29 List<DgArchivesCatalogDO> updateList2DO(List<UpdateDgArchivesCatalogRequest> request);
30 }
1 package com.pashanhoo.catalog.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import java.io.Serializable;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 /**
12 * <p>
13 * 档案目录信息
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @TableName("DG_ARCHIVES_CATALOG")
22 public class DgArchivesCatalogDO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 目录标识码
28 */
29 @TableId(value = "BSM_CATALOG", type = IdType.UUID)
30 private String bsmCatalog;
31
32 /**
33 * 档案标识码
34 */
35 @TableField("BSM_ARCHIVES")
36 private String bsmArchives;
37
38 /**
39 * 序号
40 */
41 @TableField("XH")
42 private Integer xh;
43
44 /**
45 * 材料编码
46 */
47 @TableField("WJBM")
48 private String wjbm;
49
50 /**
51 * 材料名称
52 */
53 @TableField("WJMC")
54 private String wjmc;
55
56 /**
57 * 材料类型编码
58 */
59 @TableField("CLLXBM")
60 private String cllxbm;
61
62 /**
63 * 材料类型名称
64 */
65 @TableField("CLLXMC")
66 private String cllxmc;
67
68 /**
69 * 页数
70 */
71 @TableField("YS")
72 private String ys;
73
74 /**
75 * 页号
76 */
77 @TableField("YH")
78 private String yh;
79
80 /**
81 * 份数
82 */
83 @TableField("FS")
84 private String fs;
85
86 /**
87 * 文号
88 */
89 @TableField("WH")
90 private String wh;
91
92 /**
93 * 备注
94 */
95 @TableField("BZ")
96 private String bz;
97
98 /**
99 * 附件来源(1:业务附件,2:补录附件)
100 */
101 @TableField("FJLY")
102 private String fjly;
103 }
1 package com.pashanhoo.catalog.entity.vo;
2
3 import java.io.Serializable;
4 import java.util.List;
5
6 import io.swagger.annotations.ApiModel;
7 import io.swagger.annotations.ApiModelProperty;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 /**
12 * <p>
13 * 档案目录信息新增请求实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案目录信息新增请求实体")
22 public class AddDgArchivesCatalogRequest implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 目录标识码
28 */
29 @ApiModelProperty(name = "bsm_catalog", value = "目录标识码")
30 private String bsm_catalog;
31 /**
32 * 档案标识码
33 */
34 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
35 private String bsmArchives;
36
37 /**
38 * 序号
39 */
40 @ApiModelProperty(name = "xh", value = "序号")
41 private Integer xh;
42
43 /**
44 * 材料编码
45 */
46 @ApiModelProperty(name = "wjbm", value = "材料编码")
47 private String wjbm;
48
49 /**
50 * 材料名称
51 */
52 @ApiModelProperty(name = "wjmc", value = "材料名称")
53 private String wjmc;
54
55 /**
56 * 材料类型编码
57 */
58 @ApiModelProperty(name = "cllxbm", value = "材料类型编码")
59 private String cllxbm;
60
61 /**
62 * 材料类型名称
63 */
64 @ApiModelProperty(name = "cllxmc", value = "材料类型名称")
65 private String cllxmc;
66
67 /**
68 * 页数
69 */
70 @ApiModelProperty(name = "ys", value = "页数")
71 private String ys;
72
73 /**
74 * 页号
75 */
76 @ApiModelProperty(name = "yh", value = "页号")
77 private String yh;
78
79 /**
80 * 份数
81 */
82 @ApiModelProperty(name = "fs", value = "份数")
83 private String fs;
84
85 /**
86 * 文号
87 */
88 @ApiModelProperty(name = "wh", value = "文号")
89 private String wh;
90
91 /**
92 * 备注
93 */
94 @ApiModelProperty(name = "bz", value = "备注")
95 private String bz;
96
97 /**
98 * 附件来源(1:业务附件,2:补录附件)
99 */
100 @ApiModelProperty(name = "fjly", value = "附件来源(1:业务附件,2:补录附件)")
101 private String fjly;
102
103 /**
104 * 文件访问地址列表
105 */
106 @ApiModelProperty(name = "fileList", value = "文件访问地址列表")
107 private List<String> fileList;
108
109
110 }
1 package com.pashanhoo.catalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案目录信息明细实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案目录信息明细实体")
20 public class DgArchivesCatalogDetailVO implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 目录标识码
26 */
27 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
28 private String bsmCatalog;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 序号
38 */
39 @ApiModelProperty(name = "xh", value = "序号")
40 private Integer xh;
41
42 /**
43 * 材料编码
44 */
45 @ApiModelProperty(name = "wjbm", value = "材料编码")
46 private String wjbm;
47
48 /**
49 * 材料名称
50 */
51 @ApiModelProperty(name = "wjmc", value = "材料名称")
52 private String wjmc;
53
54 /**
55 * 材料类型编码
56 */
57 @ApiModelProperty(name = "cllxbm", value = "材料类型编码")
58 private String cllxbm;
59
60 /**
61 * 材料类型名称
62 */
63 @ApiModelProperty(name = "cllxmc", value = "材料类型名称")
64 private String cllxmc;
65
66 /**
67 * 页数
68 */
69 @ApiModelProperty(name = "ys", value = "页数")
70 private String ys;
71
72 /**
73 * 页号
74 */
75 @ApiModelProperty(name = "yh", value = "页号")
76 private String yh;
77
78 /**
79 * 份数
80 */
81 @ApiModelProperty(name = "fs", value = "份数")
82 private String fs;
83
84 /**
85 * 文号
86 */
87 @ApiModelProperty(name = "wh", value = "文号")
88 private String wh;
89
90 /**
91 * 备注
92 */
93 @ApiModelProperty(name = "bz", value = "备注")
94 private String bz;
95
96 /**
97 * 附件来源(1:业务附件,2:补录附件)
98 */
99 @ApiModelProperty(name = "fjly", value = "附件来源(1:业务附件,2:补录附件)")
100 private String fjly;
101 }
1 package com.pashanhoo.catalog.entity.vo;
2
3 import java.io.Serializable;
4 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9
10 /**
11 * <p>
12 * 档案目录信息列表VO
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 @Data
19 @EqualsAndHashCode(callSuper = false)
20 @ApiModel(value="档案目录信息列表VO")
21 public class DgArchivesCatalogListVO implements Serializable {
22
23 private static final long serialVersionUID = 1L;
24
25 /**
26 * 目录标识码
27 */
28 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
29 private String bsmCatalog;
30
31 /**
32 * 档案标识码
33 */
34 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
35 private String bsmArchives;
36
37 /**
38 * 序号
39 */
40 @ApiModelProperty(name = "xh", value = "序号")
41 private Integer xh;
42
43 /**
44 * 材料编码
45 */
46 @ApiModelProperty(name = "wjbm", value = "材料编码")
47 private String wjbm;
48
49 /**
50 * 材料名称
51 */
52 @ApiModelProperty(name = "wjmc", value = "材料名称")
53 private String wjmc;
54
55 /**
56 * 材料类型编码
57 */
58 @ApiModelProperty(name = "cllxbm", value = "材料类型编码")
59 private String cllxbm;
60
61 /**
62 * 材料类型名称
63 */
64 @ApiModelProperty(name = "cllxmc", value = "材料类型名称")
65 private String cllxmc;
66
67 /**
68 * 页数
69 */
70 @ApiModelProperty(name = "ys", value = "页数")
71 private String ys;
72
73 /**
74 * 页号
75 */
76 @ApiModelProperty(name = "yh", value = "页号")
77 private String yh;
78
79 /**
80 * 份数
81 */
82 @ApiModelProperty(name = "fs", value = "份数")
83 private String fs;
84
85 /**
86 * 文号
87 */
88 @ApiModelProperty(name = "wh", value = "文号")
89 private String wh;
90
91 /**
92 * 备注
93 */
94 @ApiModelProperty(name = "bz", value = "备注")
95 private String bz;
96
97 /**
98 * 附件来源(1:业务附件,2:补录附件)
99 */
100 @ApiModelProperty(name = "fjly", value = "附件来源(1:业务附件,2:补录附件)")
101 private String fjly;
102
103 /**
104 * 不动产单元
105 */
106 @ApiModelProperty(name = "bdcdyDO",value = "不动产单元")
107 private DgBdcdyDO bdcdyDO;
108 }
1 package com.pashanhoo.catalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8 import com.pashanhoo.common.PageInfo;
9
10 /**
11 * <p>
12 * 档案目录信息列表查询请求实体
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 @Data
19 @EqualsAndHashCode(callSuper = false)
20 @ApiModel(value="档案目录信息列表查询请求实体")
21 //TODO 初始查询条件是全部,需要根据情况自行删减
22 public class DgArchivesCatalogSearchRequest extends PageInfo implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 目录标识码
28 */
29 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
30 private String bsmCatalog;
31
32 /**
33 * 档案标识码
34 */
35 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
36 private String bsmArchives;
37
38 /**
39 * 序号
40 */
41 @ApiModelProperty(name = "xh", value = "序号")
42 private Integer xh;
43
44 /**
45 * 材料编码
46 */
47 @ApiModelProperty(name = "wjbm", value = "材料编码")
48 private String wjbm;
49
50 /**
51 * 材料名称
52 */
53 @ApiModelProperty(name = "wjmc", value = "材料名称")
54 private String wjmc;
55
56 /**
57 * 材料类型编码
58 */
59 @ApiModelProperty(name = "cllxbm", value = "材料类型编码")
60 private String cllxbm;
61
62 /**
63 * 材料类型名称
64 */
65 @ApiModelProperty(name = "cllxmc", value = "材料类型名称")
66 private String cllxmc;
67
68 /**
69 * 页数
70 */
71 @ApiModelProperty(name = "ys", value = "页数")
72 private String ys;
73
74 /**
75 * 页号
76 */
77 @ApiModelProperty(name = "yh", value = "页号")
78 private String yh;
79
80 /**
81 * 份数
82 */
83 @ApiModelProperty(name = "fs", value = "份数")
84 private String fs;
85
86 /**
87 * 文号
88 */
89 @ApiModelProperty(name = "wh", value = "文号")
90 private String wh;
91
92 /**
93 * 备注
94 */
95 @ApiModelProperty(name = "bz", value = "备注")
96 private String bz;
97
98 /**
99 * 附件来源(1:业务附件,2:补录附件)
100 */
101 @ApiModelProperty(name = "fjly", value = "附件来源(1:业务附件,2:补录附件)")
102 private String fjly;
103 }
1 package com.pashanhoo.catalog.entity.vo;
2
3 import com.pashanhoo.file.entity.DgFileDO;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 import java.io.Serializable;
10 import java.util.List;
11
12 @Data
13 @EqualsAndHashCode(callSuper = false)
14 @ApiModel(value = "档案目录信息列表对应附件列表VO")
15 public class DgArchivesCatalogWithFileVO implements Serializable {
16
17 private static final long serialVersionUID = 1L;
18
19 /**
20 * 目录标识码
21 */
22 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
23 private String bsmCatalog;
24
25 /**
26 * 档案标识码
27 */
28 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
29 private String bsmArchives;
30
31 /**
32 * 序号
33 */
34 @ApiModelProperty(name = "xh", value = "序号")
35 private Integer xh;
36
37 /**
38 * 材料编码
39 */
40 @ApiModelProperty(name = "wjbm", value = "材料编码")
41 private String wjbm;
42
43 /**
44 * 材料名称
45 */
46 @ApiModelProperty(name = "wjmc", value = "材料名称")
47 private String wjmc;
48
49 /**
50 * 材料类型编码
51 */
52 @ApiModelProperty(name = "cllxbm", value = "材料类型编码")
53 private String cllxbm;
54
55 /**
56 * 材料类型名称
57 */
58 @ApiModelProperty(name = "cllxmc", value = "材料类型名称")
59 private String cllxmc;
60
61 /**
62 * 页数
63 */
64 @ApiModelProperty(name = "ys", value = "页数")
65 private String ys;
66
67 /**
68 * 页号
69 */
70 @ApiModelProperty(name = "yh", value = "页号")
71 private String yh;
72
73 /**
74 * 份数
75 */
76 @ApiModelProperty(name = "fs", value = "份数")
77 private String fs;
78
79 /**
80 * 文号
81 */
82 @ApiModelProperty(name = "wh", value = "文号")
83 private String wh;
84
85 /**
86 * 备注
87 */
88 @ApiModelProperty(name = "bz", value = "备注")
89 private String bz;
90
91 /**
92 * 附件来源(1:业务附件,2:补录附件)
93 */
94 @ApiModelProperty(name = "fjly", value = "附件来源(1:业务附件,2:补录附件)")
95 private String fjly;
96
97 /**
98 * 附件对象集合
99 */
100 @ApiModelProperty(name = "dgFileDOS", value = "附件对象集合")
101 private List<DgFileDO> dgFileDOS;
102 }
1 package com.pashanhoo.catalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案目录信息修改请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案目录信息修改请求实体")
20 public class UpdateDgArchivesCatalogRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 目录标识码
26 */
27 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
28 private String bsmCatalog;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 序号
38 */
39 @ApiModelProperty(name = "xh", value = "序号")
40 private Integer xh;
41
42 /**
43 * 材料编码
44 */
45 @ApiModelProperty(name = "wjbm", value = "材料编码")
46 private String wjbm;
47
48 /**
49 * 材料名称
50 */
51 @ApiModelProperty(name = "wjmc", value = "材料名称")
52 private String wjmc;
53
54 /**
55 * 材料类型编码
56 */
57 @ApiModelProperty(name = "cllxbm", value = "材料类型编码")
58 private String cllxbm;
59
60 /**
61 * 材料类型名称
62 */
63 @ApiModelProperty(name = "cllxmc", value = "材料类型名称")
64 private String cllxmc;
65
66 /**
67 * 页数
68 */
69 @ApiModelProperty(name = "ys", value = "页数")
70 private String ys;
71
72 /**
73 * 页号
74 */
75 @ApiModelProperty(name = "yh", value = "页号")
76 private String yh;
77
78 /**
79 * 份数
80 */
81 @ApiModelProperty(name = "fs", value = "份数")
82 private String fs;
83
84 /**
85 * 文号
86 */
87 @ApiModelProperty(name = "wh", value = "文号")
88 private String wh;
89
90 /**
91 * 备注
92 */
93 @ApiModelProperty(name = "bz", value = "备注")
94 private String bz;
95
96 /**
97 * 附件来源(1:业务附件,2:补录附件)
98 */
99 @ApiModelProperty(name = "fjly", value = "附件来源(1:业务附件,2:补录附件)")
100 private String fjly;
101 }
1 package com.pashanhoo.catalog.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.catalog.entity.DgArchivesCatalogDO;
5 import com.pashanhoo.catalog.entity.vo.DgArchivesCatalogListVO;
6 import org.apache.ibatis.annotations.Param;
7
8 import java.util.List;
9
10 /**
11 * <p>
12 * 档案目录信息 Mapper 接口
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 public interface DgArchivesCatalogMapper extends BaseMapper<DgArchivesCatalogDO> {
19
20 /**
21 * 获取目录和不动产信息
22 *
23 * @param bsmArchives 档案标识码集合
24 * @return
25 */
26 List<DgArchivesCatalogListVO> getCatalog(@Param("bsmArchives") List<String> bsmArchives);
27 }
1 package com.pashanhoo.catalog.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.catalog.entity.*;
5 import com.pashanhoo.catalog.entity.vo.*;
6
7 import java.util.List;
8
9 /**
10 * <p>
11 * 档案目录信息 服务类
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 public interface DgArchivesCatalogService extends IService<DgArchivesCatalogDO> {
18 /**
19 * 新增记录
20 * @param request
21 * @return
22 */
23 boolean insertDgArchivesCatalog(AddDgArchivesCatalogRequest request);
24
25 /**
26 * 根据主键查询记录详情
27 * @param id
28 * @return
29 */
30 DgArchivesCatalogDetailVO getDgArchivesCatalogDetailById(String id);
31
32 /**
33 * 修改单条记录
34 * @param request
35 * @return
36 */
37 boolean updateDgArchivesCatalog(UpdateDgArchivesCatalogRequest request);
38
39 /**
40 * 根据条件进行列表查询
41 * @param bsmArchives 档案标识码
42 * @return
43 */
44 List<DgArchivesCatalogListVO> searchDgArchivesCatalogList(List<String> bsmArchives);
45 }
1 package com.pashanhoo.catalog.service.impl;
2
3 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 import com.pashanhoo.catalog.entity.*;
5 import com.pashanhoo.catalog.entity.vo.*;
6 import com.pashanhoo.catalog.mapper.DgArchivesCatalogMapper;
7 import com.pashanhoo.catalog.service.DgArchivesCatalogService;
8 import org.springframework.beans.factory.annotation.Autowired;
9 import org.springframework.stereotype.Service;
10
11 import java.util.List;
12
13 /**
14 * <p>
15 * 档案目录信息 服务实现类
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Service
22 public class DgArchivesCatalogServiceImpl extends ServiceImpl<DgArchivesCatalogMapper, DgArchivesCatalogDO> implements DgArchivesCatalogService {
23
24 @Autowired
25 private DgArchivesCatalogConverter dgarchivescatalogConverter;
26
27 @Autowired
28 private DgArchivesCatalogMapper dgarchivescatalogMapper;
29
30 /**
31 * 新增记录
32 * @param request
33 * @return
34 */
35 @Override
36 public boolean insertDgArchivesCatalog(AddDgArchivesCatalogRequest request) {
37 DgArchivesCatalogDO dgarchivescatalogDO = dgarchivescatalogConverter.addRequest2DO(request);
38 return this.save(dgarchivescatalogDO);
39 }
40
41 /**
42 * 根据主键查询记录详情
43 * @param id
44 * @return
45 */
46 @Override
47 public DgArchivesCatalogDetailVO getDgArchivesCatalogDetailById(String id) {
48 DgArchivesCatalogDO dgarchivescatalogDO = this.getById(id);
49 return dgarchivescatalogConverter.do2DetailVO(dgarchivescatalogDO);
50 }
51
52 /**
53 * 修改单条记录
54 * @param request
55 * @return
56 */
57 @Override
58 public boolean updateDgArchivesCatalog(UpdateDgArchivesCatalogRequest request) {
59 DgArchivesCatalogDO dgarchivescatalogDO = dgarchivescatalogConverter.updateRequest2DO(request);
60 return this.updateById(dgarchivescatalogDO);
61 }
62
63 /**
64 * 根据条件进行列表查询
65 * @param bsmArchives 档案标识码集合
66 * @return
67 */
68 @Override
69 public List<DgArchivesCatalogListVO> searchDgArchivesCatalogList(List<String> bsmArchives) {
70
71 return dgarchivescatalogMapper.getCatalog(bsmArchives);
72 }
73
74 }
1 package com.pashanhoo.common;
2
3 import com.alibaba.fastjson.JSONObject;
4 import org.slf4j.Logger;
5 import org.slf4j.LoggerFactory;
6 import org.springframework.beans.factory.annotation.Value;
7 import org.springframework.stereotype.Component;
8
9 import java.io.*;
10 import java.net.HttpURLConnection;
11 import java.net.URL;
12 import java.text.SimpleDateFormat;
13 import java.util.Date;
14 import java.util.HashMap;
15 import java.util.Map;
16 @Component
17 public class EciHttpUtil {
18
19 private static Logger logger = LoggerFactory.getLogger(EciHttpUtil.class);
20 @Value("${app.AppToken}")
21 private String appToken;
22 @Value("${app.AppSecret}")
23 private String appSecret;
24
25 @Value("${app.hostUrl}")
26 private String hostUrl;
27
28
29
30
31 public Map doPostForNew(String url, String params) {
32 logger.info("http request url:" + url);
33 logger.info("http request url:" + params);
34 PrintWriter out = null;
35 BufferedReader in = null;
36 Map jsonObject = new HashMap();
37 try{
38 URL url1=new URL(url);
39 HttpURLConnection conn= (HttpURLConnection) url1.openConnection();
40 conn.setRequestMethod("POST");
41 conn.setRequestProperty("accept","*/*");
42 conn.setRequestProperty("connection","Keep-Alive");
43 conn.setDoInput(true);
44 conn.setDoOutput(true);
45 conn.setRequestProperty("Content-Type", "application/json;charset=utf-8");
46 //x-qys-signature生成方式:Md5(AppToken + AppSecret + timestamp),获取32位小写值
47 long times=System.currentTimeMillis();
48 String unSignature = appToken + appSecret + times;
49 String signature = MD5Util.getMD5(unSignature);
50 conn.setRequestProperty("x-qys-accesstoken", appToken);
51 conn.setRequestProperty("x-qys-signature", signature);
52 conn.setRequestProperty("x-qys-timestamp", String.valueOf(times));
53
54 logger.info("x-qys-accesstoken==="+appToken);
55 logger.info("x-qys-signature==="+signature);
56 logger.info("x-qys-timestamp==="+System.currentTimeMillis());
57
58
59 out=new PrintWriter(new OutputStreamWriter(conn.getOutputStream(),"utf-8"));
60 out.print(params);
61 out.flush();
62 in = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF-8"));
63 String result="";
64 String line;
65 while ((line = in.readLine()) != null) {
66 result += line;
67 }
68 jsonObject = JSONObject.parseObject(result, Map.class);
69 }catch (Exception ex){
70 logger.info("发送 POST 请求出现异常!" + ex);
71 ex.printStackTrace();
72 }finally {
73 try {
74 if (out != null) {
75 out.close();
76 }
77 if (in != null) {
78 in.close();
79 }
80 } catch (IOException ex) {
81 ex.printStackTrace();
82 }
83 }
84 return jsonObject;
85 }
86
87 public Map doGetForNew(String url) {
88 logger.info("http request url:" + url);
89 BufferedReader in = null;
90 String result = "";
91 Map jsonObject = new HashMap();
92 try{
93 URL url1=new URL(url);
94 HttpURLConnection conn= (HttpURLConnection) url1.openConnection();
95 conn.setRequestMethod("GET");
96 conn.setRequestProperty("accept","*/*");
97 conn.setRequestProperty("connection","Keep-Alive");
98 conn.setRequestProperty("Charset", "utf-8");
99 conn.setDoInput(true);
100 conn.setDoOutput(false);
101 //x-qys-signature生成方式:Md5(AppToken + AppSecret + timestamp),获取32位小写值
102 long times=System.currentTimeMillis();
103 String unSignature = appToken +appSecret + times;
104 String signature = MD5Util.getMD5(unSignature);
105 conn.setRequestProperty("x-qys-accesstoken", appToken);
106 conn.setRequestProperty("x-qys-signature", signature);
107 conn.setRequestProperty("x-qys-timestamp", String.valueOf(times));
108
109 logger.info("x-qys-accesstoken==="+appToken);
110 logger.info("x-qys-signature==="+signature);
111 logger.info("x-qys-timestamp==="+System.currentTimeMillis());
112
113 conn.connect();
114 in = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF-8"));
115 String line;
116 while ((line = in.readLine()) != null) {
117 result += line;
118 }
119 jsonObject = JSONObject.parseObject(result, Map.class);
120 }catch (Exception ex){
121 logger.info("发送 POST 请求出现异常!" + ex);
122 ex.printStackTrace();
123 }finally {
124 try {
125 if (in != null) {
126 in.close();
127 }
128 } catch (IOException ex) {
129 ex.printStackTrace();
130 }
131 }
132 return jsonObject;
133 }
134
135
136
137 /**
138 * 文件下载
139 *
140 * @param documentId 合同文档ID
141 * @return
142 */
143 public String download(String documentId,String bh) {
144 String url = hostUrl + "/document/download" + "?documentId=" + documentId;
145 InputStream in = null;
146 String absolutePath = "";
147 OutputStream out = null;
148 try{
149 URL url1=new URL(url);
150 HttpURLConnection conn= (HttpURLConnection) url1.openConnection();
151 conn.setRequestMethod("GET");
152 conn.setRequestProperty("accept","*/*");
153 conn.setRequestProperty("connection","Keep-Alive");
154 conn.setRequestProperty("Charset", "utf-8");
155 conn.setDoInput(true);
156 conn.setDoOutput(true);
157 long times=System.currentTimeMillis();
158 //x-qys-signature生成方式:Md5(AppToken + AppSecret + timestamp),获取32位小写值
159 String unSignature = appToken + appSecret + times;
160 String signature = MD5Util.getMD5(unSignature);
161 conn.setRequestProperty("x-qys-accesstoken", appToken);
162 conn.setRequestProperty("x-qys-signature", signature);
163 conn.setRequestProperty("x-qys-timestamp", String.valueOf(times));
164
165 logger.info("x-qys-accesstoken==="+appToken);
166 logger.info("x-qys-signature==="+signature);
167 logger.info("x-qys-timestamp==="+System.currentTimeMillis());
168
169 conn.connect();
170 in =conn.getInputStream();
171 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy");
172 String dateDir = simpleDateFormat.format(new Date());
173 File savePath = new File("D:\\ECI\\" + dateDir+bh);
174 if (!savePath.exists()) {
175 savePath.mkdirs();
176 }
177 File filePath = new File(savePath + "\\" + documentId+".ofd");
178 if (!filePath.exists()){
179 filePath.createNewFile();
180 }
181 out = new FileOutputStream(filePath);
182 byte[] buffer = new byte[4096];
183 int readLength = 0;
184
185 while ((readLength = in.read(buffer)) != -1) {
186 out.write(buffer, 0, readLength);
187 }
188 absolutePath = filePath.getAbsolutePath();
189 out.flush();
190 }catch (Exception ex){
191 logger.info("发送 POST 请求出现异常!" + ex);
192 ex.printStackTrace();
193 }finally {
194 try {
195 if (in != null) {
196 in.close();
197 }
198 if(out != null) {
199 out.close();
200 }
201 } catch (IOException ex) {
202 ex.printStackTrace();
203 }
204 }
205 return absolutePath;
206 }
207
208
209
210
211
212
213
214 }
1 package com.pashanhoo.common;
2
3 import java.security.MessageDigest;
4
5 public class MD5Util {
6
7 public static String getMD5(String unEncryption) {
8 char[] hexDigits = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
9
10 try {
11 byte[] btInput = unEncryption.getBytes();
12 // 获得MD5摘要算法的 MessageDigest 对象
13 MessageDigest mdInst = MessageDigest.getInstance("MD5");
14 // 使用指定的字节更新摘要
15 mdInst.update(btInput);
16 // 获得密文
17 byte[] md = mdInst.digest();
18 // 把密文转换成十六进制的字符串形式
19 char[] str = new char[md.length * 2];
20 int k = 0;
21 for (byte byte0 : md) {
22 str[k++] = hexDigits[byte0 >>> 4 & 0xf];
23 str[k++] = hexDigits[byte0 & 0xf];
24 }
25 return new String(str).toLowerCase();
26 } catch (Exception e) {
27 e.printStackTrace();
28 return null;
29 }
30 }
31 }
1 package com.pashanhoo.common;
2
3 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
4 import org.apache.commons.codec.binary.Base64;
5
6 import java.io.*;
7
8 public class PdfUtil {
9
10
11 /**
12 * 获取文件base64
13 *
14 */
15 public static String fileToBase64(InputStream in) {
16 String base64String="";
17 try {
18 byte[] bytes = toByteArray(in);
19 in.read(bytes);
20 base64String = Base64.encodeBase64String(bytes);
21
22 } catch (FileNotFoundException e) {
23 e.printStackTrace();
24 } catch (IOException e) {
25 e.printStackTrace();
26 } finally {
27 if (null != in) {
28 try {
29 in.close();
30 } catch (IOException e) {
31 e.printStackTrace();
32 }
33 }
34 return base64String;
35 }
36 }
37
38 public static byte[] toByteArray(InputStream input) throws IOException {
39 ByteArrayOutputStream output = new ByteArrayOutputStream();
40 byte[] buffer = new byte[1024*4];
41 int n = 0;
42 while (-1 != (n = input.read(buffer))) {
43 output.write(buffer, 0, n);
44 }
45 return output.toByteArray();
46 }
47 }
1 package com.pashanhoo.common;
2
3
4
5
6 import net.glxn.qrgen.core.image.ImageType;
7 import net.glxn.qrgen.javase.QRCode;
8
9 import java.io.ByteArrayOutputStream;
10 import java.io.File;
11 import java.io.FileOutputStream;
12 import java.io.OutputStream;
13
14 public class QRCodeUtil {
15
16
17 public static void imgUrl(String url,String fileName) {
18 try{
19 ByteArrayOutputStream out= QRCode.from(url).to(ImageType.PNG).stream();
20 byte[] data = out.toByteArray();
21 OutputStream oute = new FileOutputStream(new File("E:\\ewm\\"+fileName));
22 oute.write(data);
23 oute.flush();
24 oute.close();
25 }catch(Exception ex){
26 ex.printStackTrace();
27 }
28
29 }
30
31
32
33
34 }
1 package com.pashanhoo.common;
2
3 import com.pashanhoo.qys.service.EciService;
4 import org.springframework.beans.factory.annotation.Autowired;
5 import org.springframework.context.annotation.Configuration;
6 import org.springframework.scheduling.annotation.EnableScheduling;
7 import org.springframework.scheduling.annotation.Scheduled;
8
9 @Configuration
10 @EnableScheduling
11 public class QysTask {
12 @Autowired
13 private EciService eciService;
14
15 @Scheduled(cron="0 0/5 * * * ?")
16 public void accessCreateContract() {
17 System.out.println("===========创建合同定时任务进来了=========");
18 eciService.accessCreateContract();
19 System.out.println("===========创建合同定时任务走了=========");
20 }
21
22 }
1 package com.pashanhoo.common;
2
3
4 import com.pashanhoo.zhj.service.ZhjDatasSynService;
5 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.context.annotation.Configuration;
7 import org.springframework.scheduling.annotation.EnableScheduling;
8
9 @Configuration
10 @EnableScheduling
11
12 public class ZhjTask {
13
14 @Autowired
15 private ZhjDatasSynService zhjDatasSynService;
16 //@Scheduled(cron="0 0 21 * * ? ")
17 public void execute() {
18 System.out.println("===========每天晚上九点定时任务进来了=========");
19 zhjDatasSynService.send_bdcYwInfo();
20 System.out.println("===========每天晚上九点定时任务走了=========");
21 }
22
23 }
1 package com.pashanhoo.common.util;
2
3 import com.baomidou.mybatisplus.annotation.DbType;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import com.baomidou.mybatisplus.generator.AutoGenerator;
6 import com.baomidou.mybatisplus.generator.config.*;
7 import com.baomidou.mybatisplus.generator.config.rules.DateType;
8 import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
9 import com.pashanhoo.common.util.mybatisplus.MyFreemarkerTemplateEngine;
10
11
12 /**
13 * 代码自动生成器
14 */
15 public class CodeGenerator {
16 public static void main(String[] args) {
17 // 需要构建一个 代码自动生成器 对象
18 AutoGenerator mpg = new AutoGenerator();
19 // 配置策略
20 // 1、全局配置
21 GlobalConfig gc = new GlobalConfig();
22 String projectPath = System.getProperty("user.dir");
23 gc.setOutputDir(projectPath + "/src/main/java");
24 gc.setAuthor("");
25 gc.setOpen(false);
26 // 是否覆盖
27 gc.setFileOverride(false);
28 // 去Service的I前缀
29 // gc.setEntityName("%sDO");
30 gc.setServiceName("%sService");
31 gc.setServiceImplName("%sServiceImpl");
32 gc.setControllerName("%sController");
33 gc.setDateType(DateType.ONLY_DATE);
34
35 gc.setIdType(IdType.UUID);
36 // gc.setSwagger2(true); 实体属性 Swagger2 注解
37 mpg.setGlobalConfig(gc);
38 //2、设置数据源
39 DataSourceConfig dsc = new DataSourceConfig();
40 dsc.setUrl("jdbc:oracle:thin:@192.168.2.218:1521:orcl");
41 dsc.setDriverName("oracle.jdbc.driver.OracleDriver");
42 dsc.setUsername("bdcdangan");
43 dsc.setPassword("bdcdangan");
44 dsc.setDbType(DbType.ORACLE);
45 mpg.setDataSource(dsc);
46 //3、包的配置
47 PackageConfig pc = new PackageConfig();
48 //TODO
49 pc.setModuleName("system");
50 pc.setParent("com");
51 pc.setEntity("entity");
52 pc.setMapper("mapper");
53 pc.setService("service");
54 pc.setController("controller");
55 mpg.setPackageInfo(pc);
56
57 // 配置模板
58 TemplateConfig templateConfig = new TemplateConfig();
59
60 // 配置自定义输出模板
61 //指定自定义模板路径,注意不要带上.ftl/.vm, 会根据使用的模板引擎自动识别
62 templateConfig.setEntity("templates/entity2.java");
63 templateConfig.setMapper("templates/mapper2.java");
64 templateConfig.setService("templates/service2.java");
65 templateConfig.setServiceImpl("templates/serviceImpl2.java");
66 templateConfig.setController("templates/controller2.java");
67 templateConfig.setXml("templates/mapper2.xml");
68
69 mpg.setTemplate(templateConfig);
70
71 //4、策略配置
72 StrategyConfig strategy = new StrategyConfig();
73 // 设置要映射的表名
74 strategy.setInclude("DG_RECEIVE_RELATION");
75 strategy.setNaming(NamingStrategy.underline_to_camel);
76 strategy.setColumnNaming(NamingStrategy.underline_to_camel);
77 // 自动lombok;
78 strategy.setEntityLombokModel(true);
79 mpg.setStrategy(strategy);
80
81 //设置Freemarker模板引擎
82 mpg.setTemplateEngine(new MyFreemarkerTemplateEngine());
83
84 mpg.execute(); //执行
85 }
86 }
1 package com.pashanhoo.common.util.SysCode;
2
3 import org.mapstruct.Mapper;
4
5 /**
6 * @author
7 * @since 2021-11-05
8 */
9 @Mapper(componentModel = "spring")
10 public interface SysCodeConverter {
11 SysCodeDO addRequest2DO(SysCodeVO request);
12
13
14 }
1 package com.pashanhoo.common.util.SysCode;
2
3 import com.baomidou.mybatisplus.annotation.IdType;
4 import com.baomidou.mybatisplus.annotation.TableField;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9
10 import java.io.Serializable;
11 @Data
12 @EqualsAndHashCode(callSuper = false)
13 @TableName("SYS_CODE")
14 public class SysCodeDO implements Serializable {
15 private static final long serialVersionUID = 1L;
16
17 /**
18 * 主键
19 */
20 @TableId(value = "CID", type = IdType.UUID)
21 private String cid;
22 /**
23 * 类型
24 */
25 @TableField("CTYPE")
26 private String ctype;
27 /**
28 * 任务编码
29 */
30 @TableField("TASKNO")
31 private String taskno;
32 /**
33 * 任务名称
34 */
35 @TableField("TASKNAME")
36 private String taskname;
37 /**
38 * 状态
39 */
40 @TableField("STATE")
41 private String state;
42 /**
43 * 任务值
44 */
45 @TableField("TASKVALUE")
46 private String taskvalue;
47 /**
48 * 任务子类
49 */
50 @TableField("TASKCHILD")
51 private String taskchild;
52 }
1 package com.pashanhoo.common.util.SysCode;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import org.apache.ibatis.annotations.Mapper;
5
6 @Mapper
7 public interface SysCodeMapper extends BaseMapper<SysCodeDO> {
8
9
10
11
12
13 }
1 package com.pashanhoo.common.util.SysCode;
2
3 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 import org.springframework.beans.factory.annotation.Autowired;
5 import org.springframework.stereotype.Component;
6
7 import java.util.ArrayList;
8 import java.util.List;
9
10 @Component
11 public class SysCodeUtil {
12 @Autowired
13 private SysCodeMapper sysCodeMapper;
14
15 /**
16 * 编号生成规则
17 *
18 * @param sysCodeVO
19 * @return
20 */
21 public String getSequence(SysCodeVO sysCodeVO) {
22 //1、查询数据是否存在
23 SysCodeDO sysCodeDO = queryInfoByCondition(sysCodeVO);
24 String taskValue;
25 if (sysCodeDO != null) {
26 String lastString = sysCodeDO.getTaskvalue().substring(2);
27 int code = Integer.parseInt(lastString) + 1;
28 taskValue = "BL" + code;
29 sysCodeDO.setTaskvalue(taskValue);
30 sysCodeMapper.updateById(sysCodeDO);
31 } else {
32 //3、不存在则新增
33 SysCodeDO newSysCode = new SysCodeDO();
34 newSysCode.setCtype(sysCodeVO.getCtype());
35 newSysCode.setState("1");
36 newSysCode.setTaskno(sysCodeVO.getTaskno());
37 newSysCode.setTaskname(sysCodeVO.getTaskname());
38 // taskValue = getTaskValue(sysCodeVO.getTaskchild());
39 taskValue = sysCodeVO.getTaskno() + "00000";
40 newSysCode.setTaskvalue(taskValue);
41 newSysCode.setTaskchild(sysCodeVO.getTaskchild() + "");
42 sysCodeMapper.insert(newSysCode);
43 }
44 return taskValue;
45 }
46
47 private SysCodeDO queryInfoByCondition(SysCodeVO sysCodeVO) {
48 QueryWrapper<SysCodeDO> wrapper = new QueryWrapper<>();
49 wrapper.lambda().eq(SysCodeDO::getCtype, sysCodeVO.getCtype()).eq(SysCodeDO::getTaskno, sysCodeVO.getTaskno()).eq(SysCodeDO::getTaskchild, sysCodeVO.getTaskchild());
50 return sysCodeMapper.selectOne(wrapper);
51
52 }
53
54 private String getTaskValue(int length) {
55 List<String> list = new ArrayList<String>(length - 1);
56 String num = "";
57 for (int i = 0; i < list.size(); i++) {
58 num += "0";
59 }
60 num = num + 1;
61 return num;
62 }
63
64
65 }
1 package com.pashanhoo.common.util.SysCode;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.io.Serializable;
9 @Data
10 @EqualsAndHashCode(callSuper = false)
11 @ApiModel(value="编号公共类VO实体")
12 public class SysCodeVO implements Serializable {
13 private static final long serialVersionUID = 1L;
14 /**
15 * 类型
16 */
17 @ApiModelProperty(name = "ctype", value = "类型")
18 private String ctype;
19 /**
20 * 任务编码
21 */
22 @ApiModelProperty(name = "taskno", value = "任务编码")
23 private String taskno;
24 /**
25 * 任务名称
26 */
27 @ApiModelProperty(name = "taskname", value = "任务名称")
28 private String taskname;
29 /**
30 * 状态
31 */
32 @ApiModelProperty(name = "state", value = "状态")
33 private String state;
34 /**
35 * 任务值
36 */
37 @ApiModelProperty(name = "taskvalue", value = "任务值")
38 private String taskvalue;
39 /**
40 * 任务子类
41 */
42 @ApiModelProperty(name = "taskchild", value = "任务子类")
43 private Integer taskchild;
44 }
1 package com.pashanhoo.common.util;
2
3 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
4 import com.google.common.collect.ArrayListMultimap;
5 import com.google.common.collect.Lists;
6 import com.google.common.collect.Multimap;
7 import org.apache.commons.collections.CollectionUtils;
8
9 import java.lang.reflect.InvocationTargetException;
10 import java.lang.reflect.Method;
11 import java.util.Collections;
12 import java.util.Comparator;
13 import java.util.List;
14
15 public class TreeUtil {
16
17 /**
18 * 比较规则
19 */
20 private static Comparator comparator;
21
22 /**
23 * 树节点Class类型
24 */
25 private static Class<?> treeNodeClass;
26
27 /**
28 * 主键的get方法对应的Method对象
29 */
30 private static Method getKeyMethod;
31
32 /**
33 * 获取父节点id的get方法对应的Method对象
34 */
35 private static Method getParentIdMethod;
36
37 /**
38 * 设置子元素对应的方法的Method对象
39 */
40 private static Method setChildrenMethod;
41
42 /**
43 * @param comparator
44 * @param treeNodeClass
45 * @param key 首字母大写的主键字段名称
46 */
47 public static void setRule(Comparator comparator, Class<?> treeNodeClass, String key) {
48 TreeUtil.comparator = comparator;
49 TreeUtil.treeNodeClass = treeNodeClass;
50 try {
51 TreeUtil.getKeyMethod = treeNodeClass.getMethod("get" + key);
52 TreeUtil.getParentIdMethod = treeNodeClass.getMethod("getParentId");
53 TreeUtil.setChildrenMethod = treeNodeClass.getMethod("setChildren", List.class);
54 } catch (NoSuchMethodException e) {
55 e.printStackTrace();
56 }
57
58 }
59
60 /**
61 * 将符合条件的List转为Tree
62 *
63 * @param
64 * @param rootId
65 * @return
66 */
67
68 public static <TreeNode> List<TreeNode> listToTree(List<TreeNode> treeNodes, String rootId) {
69 if (CollectionUtils.isEmpty(treeNodes)) {
70 return Lists.newArrayList();
71 }
72
73 //parent -> [data1, data2 ...]
74 Multimap<String, TreeNode> parentMap = ArrayListMultimap.create();
75 //记录parentMap
76 List<TreeNode> rootList = Lists.newArrayList();
77
78 for (TreeNode treeNode : treeNodes) {
79 String parentId = null;
80 try {
81 parentId = (String) getParentIdMethod.invoke(treeNode);
82 } catch (IllegalAccessException e) {
83 e.printStackTrace();
84 } catch (InvocationTargetException e) {
85 e.printStackTrace();
86 }
87
88 parentMap.put(parentId, treeNode);
89
90 //从根节点的下一级构造树
91
92 //rootId为null,从最顶部构造整棵树
93 if (rootId == null) {
94 if (parentId == null) {
95 rootList.add(treeNode);
96 }
97 }
98 if (StringUtils.isNotBlank(parentId) && parentId.equals(rootId)) {
99 rootList.add(treeNode);
100 }
101 }
102
103 // 对树节点进行排序
104 Collections.sort(rootList, comparator);
105
106 // 递归生成树
107 transformTree(rootList, parentMap);
108 return rootList;
109 }
110
111 private static <TreeNode> void transformTree(List<TreeNode> treeNodeList, Multimap<String, TreeNode> parentMap) {
112 for (int i = 0; i < treeNodeList.size(); i++) {
113 // 遍历该层的每个元素
114 TreeNode treeNode = treeNodeList.get(i);
115 //获取当前节点下一层节点的List数据
116 List<TreeNode> tempList = null;
117 try {
118 tempList = (List<TreeNode>) parentMap.get((String) getKeyMethod.invoke(treeNode));
119 } catch (IllegalAccessException e) {
120 e.printStackTrace();
121 } catch (InvocationTargetException e) {
122 e.printStackTrace();
123 }
124 if (CollectionUtils.isNotEmpty(tempList)) {
125 //首先排序下一层节点
126 Collections.sort(tempList, comparator);
127 //将下一层节点数据设置为当前节点的Children数据
128 try {
129 setChildrenMethod.invoke(treeNode, tempList);
130 } catch (IllegalAccessException e) {
131 e.printStackTrace();
132 } catch (InvocationTargetException e) {
133 e.printStackTrace();
134 }
135 // 进入到下一层处理
136 transformTree(tempList, parentMap);
137 }
138 }
139
140 }
141 }
1 package com.pashanhoo.common.util.fileupload;
2
3 import polaris.fileattachment.AttachmentService;
4 import polaris.fileattachment.models.FileUrl;
5
6 import javax.annotation.Resource;
7 import java.text.SimpleDateFormat;
8 import java.util.Date;
9 import java.util.regex.Matcher;
10 import java.util.regex.Pattern;
11
12 public class FileAttachmentUtil {
13 private static final String FILE_URL_PATTERN = "^[^\\\\/:*?\"<>|\r\n]+?:[^\\\\/:*?\"<>|\r\n]+(/[^\\\\/:*?\"<>|\r\n]+)*$";
14 private static final Pattern DIRECTORY_NAME_PATTERN = Pattern.compile("([^/]*)[/]?$");
15 private static final Pattern SERVER_REGEX = Pattern.compile("^[^\\\\/:*?\"<>|\r\n]+?:");
16 private static final Pattern FILE_REGEX = Pattern.compile("[/:]([^\\\\/:*?\"<>|\r\n]+)$");
17
18 @Resource
19 private AttachmentService attachmentService;
20
21 public FileAttachmentUtil() {
22 }
23
24 public static FileUrl parseFileUrl(String fileUrl) throws RuntimeException {
25 int index1 = 0;
26 int index2 = 0;
27 if (fileUrl != null && fileUrl.matches(FILE_URL_PATTERN)) {
28 Matcher regexMatcher = SERVER_REGEX.matcher(fileUrl);
29 if (regexMatcher.find()) {
30 index1 = regexMatcher.end();
31 }
32 regexMatcher = FILE_REGEX.matcher(fileUrl);
33 if (regexMatcher.find()) {
34 index2 = regexMatcher.start(1);
35 }
36 if (index1 != 0 && index2 != 0 && index1 <= index2) {
37 return new FileUrl(fileUrl.substring(0, index1 - 1), fileUrl.substring(index1, index2), fileUrl.substring(index2));
38 } else {
39 throw new RuntimeException("附件url格式错误,fileUrl = " + fileUrl);
40 }
41 } else {
42 throw new RuntimeException("附件url格式错误,fileUrl = " + (fileUrl == null ? "null" : fileUrl));
43 }
44 }
45
46 public static String getServerNameFromFileUrl(String fileUrl) {
47 if (fileUrl != null && fileUrl.matches(FILE_URL_PATTERN)) {
48 Matcher regexMatcher = SERVER_REGEX.matcher(fileUrl);
49 if (regexMatcher.find()) {
50 int index = regexMatcher.end();
51 return fileUrl.substring(0, index - 1);
52 }
53 }
54 throw new RuntimeException("附件url格式错误,fileUrl = " + (fileUrl == null ? "null" : fileUrl));
55 }
56
57 public static String generateFileUrl(String serverName, String path, String fileId) throws RuntimeException {
58 if (serverName != null && !serverName.isEmpty()) {
59 if (path != null && !path.isEmpty()) {
60 if (fileId != null && !fileId.isEmpty()) {
61 StringBuilder result = new StringBuilder();
62 result.append(serverName);
63 result.append(":");
64 result.append(path);
65 if (!path.endsWith("/")) {
66 result.append("/");
67 }
68 result.append(fileId);
69 return result.toString();
70 } else {
71 throw new RuntimeException("创建附件服务器自定义格式的FileUrl地址时附件名称(ID)为null");
72 }
73 } else {
74 throw new RuntimeException("创建附件服务器自定义格式的FileUrl地址时附件路径为null");
75 }
76 } else {
77 throw new RuntimeException("创建附件服务器自定义格式的FileUrl地址时附件服务器名为null");
78 }
79 }
80
81 public static boolean isFileUrl(String fileUrl) {
82 return fileUrl.matches(FILE_URL_PATTERN);
83 }
84
85 public static String getParentPath(String path) {
86 Matcher m = DIRECTORY_NAME_PATTERN.matcher(path);
87 m.find();
88 return m.replaceAll("");
89 }
90
91 public static String getPathName(String path) {
92 Matcher m = DIRECTORY_NAME_PATTERN.matcher(path);
93 m.find();
94 return m.group(1);
95 }
96
97 public static String getSavePath(String bsm) {
98 String date = new SimpleDateFormat("yyyyMMdd").format(new Date());
99 String path = filterString(bsm);
100 return date + "/" + path;
101 }
102
103 public static String filterString(String str) {
104 StringBuffer s = new StringBuffer(str.length());
105 for (int i = 0; i < str.length(); i++) {
106 if (!hasFullChar(String.valueOf(str.charAt(i)))) {
107 s.append(str.charAt(i));
108 }
109 }
110 return s.toString();
111 }
112
113 public static boolean hasFullChar(String str) {
114 return str.getBytes().length != str.length();
115 }
116
117 public static String getFileNameNoEx(String filename) {
118 if ((filename != null) && (filename.length() > 0)) {
119 int dot = filename.lastIndexOf('.');
120 if ((dot > -1) && (dot < (filename.length()))) {
121 return filename.substring(0, dot);
122 }
123 }
124 return filename;
125 }
126 }
1 package com.pashanhoo.common.util.fileupload;
2
3 import com.pashanhoo.common.Result;
4 import io.minio.messages.DeleteError;
5 import io.swagger.annotations.Api;
6 import io.swagger.annotations.ApiOperation;
7 import io.swagger.annotations.ApiParam;
8 import org.springframework.beans.factory.annotation.Autowired;
9 import org.springframework.web.bind.annotation.*;
10 import org.springframework.web.multipart.MultipartFile;
11
12 import javax.servlet.http.HttpServletResponse;
13 import java.io.IOException;
14 import java.util.ArrayList;
15 import java.util.List;
16
17 /**
18 * 文件上传
19 */
20 @Api(tags = "文件控制器")
21 @RequestMapping("/file")
22 @RestController
23 public class FileController {
24
25 @Autowired
26 MinioUtil minioUtil;
27 @Autowired
28 MinioConfig minioConfig;
29
30 @RequestMapping(value = "/upload", method = RequestMethod.POST)
31 @ApiOperation("上传单个文件")
32 public Result upload(@RequestPart("file") MultipartFile file, HttpServletResponse response) {
33
34 try {
35 return Result.ok(minioUtil.upload(file));
36 } catch (Exception e) {
37 return Result.exception(e.getMessage());
38 }
39 }
40
41 @RequestMapping(value = "/batchUpload", method = RequestMethod.POST,headers = "content-type=multipart/form-data")
42 @ApiOperation("上传多个文件")
43 public Result upload(@RequestPart("file") MultipartFile[] files, HttpServletResponse response) {
44
45 try {
46 return Result.ok(minioUtil.batchUpload(files));
47 } catch (Exception e) {
48 return Result.exception(e.getMessage());
49 }
50 }
51
52 @DeleteMapping("/deleteFile")
53 @ApiOperation("删除文件")
54 public Result deleteFile(@ApiParam("存储url") @RequestParam("saveUrl") String saveUrl){
55 try {
56 minioUtil.removeObject(minioConfig.getBucket(), saveUrl);
57 return Result.ok();
58 } catch (Exception e) {
59 return Result.exception(e.getMessage());
60 }
61 }
62
63 @DeleteMapping("/batchDeleteFile")
64 @ApiOperation("批量删除文件")
65 public Result batchDeleteFile(@ApiParam("存储url集合") @RequestBody List<String> saveUrls){
66 try {
67 List<String> msg = new ArrayList<>();
68 Iterable<io.minio.Result<DeleteError>> results = minioUtil.batchRemove(minioConfig.getBucket(), saveUrls);
69 for (io.minio.Result<DeleteError> result : results) {
70 DeleteError deleteError = result.get();
71 msg.add("Error in deleting object " + deleteError.objectName() + ":" + deleteError.message());
72 }
73 return Result.ok(msg.toString());
74 } catch (Exception e) {
75 return Result.exception(e.getMessage());
76 }
77 }
78
79 }
1 package com.pashanhoo.common.util.fileupload;
2
3 import lombok.Data;
4 import org.springframework.boot.context.properties.ConfigurationProperties;
5 import org.springframework.stereotype.Component;
6
7 /**
8 * minio配置类
9 */
10 @Data
11 @Component
12 @ConfigurationProperties(prefix = "minio.params")
13 public class MinioConfig {
14 /**
15 * 链接类型
16 */
17 private String type;
18 /**
19 * 桶名称
20 */
21 private String bucket;
22 /**
23 * 服务地址
24 */
25 private String endpoint;
26 /**
27 * 端口
28 */
29 private String port;
30 /**
31 * 用户
32 */
33 private String accessKeyId;
34 /**
35 * 密码
36 */
37 private String accessKeySecret;
38 }
1 package com.pashanhoo.common.util.fileupload;
2
3 import com.pashanhoo.file.entity.vo.FileAttribute;
4 import io.minio.*;
5 import io.minio.messages.DeleteError;
6 import io.minio.messages.DeleteObject;
7 import org.springframework.beans.factory.annotation.Autowired;
8 import org.springframework.stereotype.Component;
9 import org.springframework.util.Assert;
10 import org.springframework.util.StringUtils;
11 import org.springframework.web.multipart.MultipartFile;
12
13 import javax.annotation.PostConstruct;
14 import java.io.IOException;
15 import java.io.InputStream;
16 import java.util.*;
17
18 /**
19 * minio工具类
20 */
21 @Component
22 public class MinioUtil {
23
24 private MinioClient minioClient;
25 @Autowired
26 MinioConfig minioConfig;
27
28 @PostConstruct
29 public void init() {
30 try {
31 minioClient = MinioClient.builder().endpoint(String.format("http://%s:%s", minioConfig.getEndpoint(), minioConfig.getPort())).credentials(minioConfig.getAccessKeyId(), minioConfig.getAccessKeySecret()).build();
32 boolean isExist = minioClient.bucketExists(BucketExistsArgs.builder().bucket(minioConfig.getBucket()).build());
33 if (!isExist) {
34 minioClient.makeBucket(MakeBucketArgs.builder().bucket(minioConfig.getBucket()).build());
35 }
36 } catch (Exception e) {
37 e.printStackTrace();
38 }
39 }
40
41 /**
42 * 文件上传
43 *
44 * @param file
45 * @return minio文件路径
46 * @throws IOException
47 */
48 public FileAttribute upload(MultipartFile file) throws IOException {
49 Assert.notNull(file, "上传文件为空");
50 // 上传地址
51 String savePath = FileAttachmentUtil.getSavePath(UUID.randomUUID().toString());
52 // 预览地址
53 String preViewPath = FileAttachmentUtil.getSavePath(UUID.randomUUID().toString());
54 // 文件带后缀名
55 String originalFilename = file.getOriginalFilename();
56 // 后缀名
57 String expandName = StringUtils.getFilenameExtension(file.getOriginalFilename());
58 // 文件名
59 String fileName = originalFilename.substring(0, originalFilename.indexOf("."));
60 String contentType = CONTENT_TYPE_MAP.get(expandName.toLowerCase());
61 // 下载地址
62 String saveUrl = savePath + "/" + originalFilename;
63 // 浏览器直接预览地址,针对图片
64 String pUrl = minioConfig.getType() + minioConfig.getEndpoint() + "/file/" + saveUrl;
65 try {
66 minioClient.putObject(PutObjectArgs.builder().bucket(minioConfig.getBucket()).object(saveUrl).stream(file.getInputStream(), file.getSize(), -1).contentType(contentType).build());
67 } catch (Exception e) {
68 e.printStackTrace();
69 }
70 FileAttribute fileAttribute = new FileAttribute();
71 fileAttribute.setFileName(fileName);
72 fileAttribute.setFileSize(Long.toString(file.getSize()));
73 fileAttribute.setSaveUrl(saveUrl);
74 fileAttribute.setPreviewUrl(pUrl);
75 fileAttribute.setExpandName(expandName);
76 return fileAttribute;
77 }
78
79 /**
80 * 批量上传
81 *
82 * @param files
83 * @return
84 * @throws IOException
85 */
86 public List<FileAttribute> batchUpload(MultipartFile[] files) throws IOException {
87 Assert.notNull(files, "上传文件为空");
88 List<FileAttribute> list = new ArrayList<>();
89 for (MultipartFile file : files) {
90 FileAttribute result = this.upload(file);
91 list.add(result);
92 }
93 return list;
94 }
95
96 /**
97 * 删除附件
98 *
99 * @param bucketName 存储桶名称
100 * @param objectName 附件存储路径
101 * @throws Exception
102 */
103 public void removeObject(String bucketName, String objectName) throws Exception {
104 minioClient.removeObject(RemoveObjectArgs.builder().bucket(bucketName).object(objectName).build());
105 }
106
107 /**
108 * 批量删除附件
109 *
110 * @param bucketName 存储桶名称
111 * @param objectNames 附件存储路径集合
112 */
113 public Iterable<Result<DeleteError>> batchRemove(String bucketName, List<String> objectNames) {
114 List<DeleteObject> objects = new ArrayList<>(objectNames.size());
115 for (String objectName : objectNames) {
116 objects.add(new DeleteObject(objectName));
117 }
118 Iterable<Result<DeleteError>> results = minioClient.removeObjects(RemoveObjectsArgs.builder().bucket(bucketName).objects(objects).build());
119 return results;
120 }
121
122 /**
123 * 通过输入流上传到minio
124 *
125 * @param inputStream 文件输入流
126 * @param fileName 文件名,去除后缀名
127 * @param expandName 带.后缀名
128 * @param fileSize 文件大小
129 * @return
130 * @throws IOException
131 */
132 public FileAttribute transferToMinio(InputStream inputStream, String fileName, String expandName, String fileSize) throws IOException {
133 String savePath = FileAttachmentUtil.getSavePath(UUID.randomUUID().toString());
134 String contentType = CONTENT_TYPE_MAP.get(expandName.toLowerCase());
135 // 下载地址
136 String saveUrl = savePath + "/" + fileName + expandName;
137 // 浏览器直接预览地址,针对图片
138 String pUrl = minioConfig.getType() + minioConfig.getEndpoint() + "/file/" + saveUrl;
139 try {
140 minioClient.putObject(PutObjectArgs.builder().bucket(minioConfig.getBucket()).object(saveUrl).stream(inputStream, Long.parseLong(fileSize),-1).contentType(contentType).build());
141 // minioClient.putObject(minioConfig.getBucket(), saveUrl, inputStream, contentType);
142 } catch (Exception e) {
143 e.printStackTrace();
144 }
145 FileAttribute fileAttribute = new FileAttribute();
146 fileAttribute.setFileName(fileName);
147 fileAttribute.setFileSize(fileSize);
148 fileAttribute.setSaveUrl(saveUrl);
149 fileAttribute.setPreviewUrl(pUrl);
150 return fileAttribute;
151 }
152
153 /**
154 * 根据存储路径组装下载预览路径
155 *
156 * @param saveUrl
157 * @return
158 */
159 public String getPreviewUrl(String saveUrl) {
160 return minioConfig.getType() + minioConfig.getEndpoint() + "/file/" + saveUrl;
161 }
162
163 public InputStream getObject(String objectName) throws Exception{
164 return minioClient.getObject(GetObjectArgs.builder().bucket(minioConfig.getBucket()).object(objectName).build());
165 }
166
167 private static final Map<String, String> CONTENT_TYPE_MAP = new HashMap<>() {
168 {
169 put("323", "text/h323");
170 put("3gp", "video/3gpp");
171 put("aab", "application/x-authoware-bin");
172 put("aam", "application/x-authoware-map");
173 put("aas", "application/x-authoware-seg");
174 put("acx", "application/internet-property-stream");
175 put("ai", "application/postscript");
176 put("aif", "audio/x-aiff");
177 put("aifc", "audio/x-aiff");
178 put("aiff", "audio/x-aiff");
179 put("als", "audio/X-Alpha5");
180 put("amc", "application/x-mpeg");
181 put("ani", "application/octet-stream");
182 put("apk", "application/vnd.android.package-archive");
183 put("asc", "text/plain");
184 put("asd", "application/astound");
185 put("asf", "video/x-ms-asf");
186 put("asn", "application/astound");
187 put("asp", "application/x-asap");
188 put("asr", "video/x-ms-asf");
189 put("asx", "video/x-ms-asf");
190 put("au", "audio/basic");
191 put("avb", "application/octet-stream");
192 put("avi", "video/x-msvideo");
193 put("awb", "audio/amr-wb");
194 put("axs", "application/olescript");
195 put("bas", "text/plain");
196 put("bcpio", "application/x-bcpio");
197 put("bin ", "application/octet-stream");
198 put("bld", "application/bld");
199 put("bld2", "application/bld2");
200 put("bmp", "image/bmp");
201 put("bpk", "application/octet-stream");
202 put("bz2", "application/x-bzip2");
203 put("c", "text/plain");
204 put("cal", "image/x-cals");
205 put("cat", "application/vnd.ms-pkiseccat");
206 put("ccn", "application/x-cnc");
207 put("cco", "application/x-cocoa");
208 put("cdf", "application/x-cdf");
209 put("cer", "application/x-x509-ca-cert");
210 put("cgi", "magnus-internal/cgi");
211 put("chat", "application/x-chat");
212 put("class", "application/octet-stream");
213 put("clp", "application/x-msclip");
214 put("cmx", "image/x-cmx");
215 put("co", "application/x-cult3d-object");
216 put("cod", "image/cis-cod");
217 put("conf", "text/plain");
218 put("cpio", "application/x-cpio");
219 put("cpp", "text/plain");
220 put("cpt", "application/mac-compactpro");
221 put("crd", "application/x-mscardfile");
222 put("crl", "application/pkix-crl");
223 put("crt", "application/x-x509-ca-cert");
224 put("csh", "application/x-csh");
225 put("csm", "chemical/x-csml");
226 put("csml", "chemical/x-csml");
227 put("css", "text/css");
228 put("cur", "application/octet-stream");
229 put("dcm", "x-lml/x-evm");
230 put("dcr", "application/x-director");
231 put("dcx", "image/x-dcx");
232 put("der", "application/x-x509-ca-cert");
233 put("dhtml", "text/html");
234 put("dir", "application/x-director");
235 put("dll", "application/x-msdownload");
236 put("dmg", "application/octet-stream");
237 put("dms", "application/octet-stream");
238 put("doc", "application/msword");
239 put("docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document");
240 put("dot", "application/msword");
241 put("dvi", "application/x-dvi");
242 put("dwf", "drawing/x-dwf");
243 put("dwg", "application/x-autocad");
244 put("dxf", "application/x-autocad");
245 put("dxr", "application/x-director");
246 put("ebk", "application/x-expandedbook");
247 put("emb", "chemical/x-embl-dl-nucleotide");
248 put("embl", "chemical/x-embl-dl-nucleotide");
249 put("eps", "application/postscript");
250 put("epub", "application/epub+zip");
251 put("eri", "image/x-eri");
252 put("es", "audio/echospeech");
253 put("esl", "audio/echospeech");
254 put("etc", "application/x-earthtime");
255 put("etx", "text/x-setext");
256 put("evm", "x-lml/x-evm");
257 put("evy", "application/envoy");
258 put("exe", "application/octet-stream");
259 put("fh4", "image/x-freehand");
260 put("fh5", "image/x-freehand");
261 put("fhc", "image/x-freehand");
262 put("fif", "application/fractals");
263 put("flr", "x-world/x-vrml");
264 put("flv", "flv-application/octet-stream");
265 put("fm", "application/x-maker");
266 put("fpx", "image/x-fpx");
267 put("fvi", "video/isivideo");
268 put("gau", "chemical/x-gaussian-input");
269 put("gca", "application/x-gca-compressed");
270 put("gdb", "x-lml/x-gdb");
271 put("gif", "image/gif");
272 put("gps", "application/x-gps");
273 put("gtar", "application/x-gtar");
274 put("gz", "application/x-gzip");
275 put("h", "text/plain");
276 put("hdf", "application/x-hdf");
277 put("hdm", "text/x-hdml");
278 put("hdml", "text/x-hdml");
279 put("hlp", "application/winhlp");
280 put("hqx", "application/mac-binhex40");
281 put("hta", "application/hta");
282 put("htc", "text/x-component");
283 put("htm", "text/html");
284 put("html", "text/html");
285 put("hts", "text/html");
286 put("htt", "text/webviewhtml");
287 put("ice", "x-conference/x-cooltalk");
288 put("ico", "image/x-icon");
289 put("ief", "image/ief");
290 put("ifm", "image/gif");
291 put("ifs", "image/ifs");
292 put("iii", "application/x-iphone");
293 put("imy", "audio/melody");
294 put("ins", "application/x-internet-signup");
295 put("ips", "application/x-ipscript");
296 put("ipx", "application/x-ipix");
297 put("isp", "application/x-internet-signup");
298 put("it", "audio/x-mod");
299 put("itz", "audio/x-mod");
300 put("ivr", "i-world/i-vrml");
301 put("j2k", "image/j2k");
302 put("jad", "text/vnd.sun.j2me.app-descriptor");
303 put("jam", "application/x-jam");
304 put("jar", "application/java-archive");
305 put("java", "text/plain");
306 put("jfif", "image/pipeg");
307 put("jnlp", "application/x-java-jnlp-file");
308 put("jpe", "image/jpeg");
309 put("jpeg", "image/jpeg");
310 put("jpg", "image/jpeg");
311 put("jpz", "image/jpeg");
312 put("js", "application/x-javascript");
313 put("jwc", "application/jwc");
314 put("kjx", "application/x-kjx");
315 put("lak", "x-lml/x-lak");
316 put("latex", "application/x-latex");
317 put("lcc", "application/fastman");
318 put("lcl", "application/x-digitalloca");
319 put("lcr", "application/x-digitalloca");
320 put("lgh", "application/lgh");
321 put("lha", "application/octet-stream");
322 put("lml", "x-lml/x-lml");
323 put("lmlpack", "x-lml/x-lmlpack");
324 put("log", "text/plain");
325 put("lsf", "video/x-la-asf");
326 put("lsx", "video/x-la-asf");
327 put("lzh", "application/octet-stream");
328 put("m13", "application/x-msmediaview");
329 put("m14", "application/x-msmediaview");
330 put("m15", "audio/x-mod");
331 put("m3u", "audio/x-mpegurl");
332 put("m3url", "audio/x-mpegurl");
333 put("m4a", "audio/mp4a-latm");
334 put("m4b", "audio/mp4a-latm");
335 put("m4p", "audio/mp4a-latm");
336 put("m4u", "video/vnd.mpegurl");
337 put("m4v", "video/x-m4v");
338 put("ma1", "audio/ma1");
339 put("ma2", "audio/ma2");
340 put("ma3", "audio/ma3");
341 put("ma5", "audio/ma5");
342 put("man", "application/x-troff-man");
343 put("map", "magnus-internal/imagemap");
344 put("mbd", "application/mbedlet");
345 put("mct", "application/x-mascot");
346 put("mdb", "application/x-msaccess");
347 put("mdz", "audio/x-mod");
348 put("me", "application/x-troff-me");
349 put("mel", "text/x-vmel");
350 put("mht", "message/rfc822");
351 put("mhtml", "message/rfc822");
352 put("mi", "application/x-mif");
353 put("mid", "audio/mid");
354 put("midi", "audio/midi");
355 put("mif", "application/x-mif");
356 put("mil", "image/x-cals");
357 put("mio", "audio/x-mio");
358 put("mmf", "application/x-skt-lbs");
359 put("mng", "video/x-mng");
360 put("mny", "application/x-msmoney");
361 put("moc", "application/x-mocha");
362 put("mocha", "application/x-mocha");
363 put("mod", "audio/x-mod");
364 put("mof", "application/x-yumekara");
365 put("mol", "chemical/x-mdl-molfile");
366 put("mop", "chemical/x-mopac-input");
367 put("mov", "video/quicktime");
368 put("movie", "video/x-sgi-movie");
369 put("mp2", "video/mpeg");
370 put("mp3", "audio/mpeg");
371 put("mp4", "video/mp4");
372 put("mpa", "video/mpeg");
373 put("mpc", "application/vnd.mpohun.certificate");
374 put("mpe", "video/mpeg");
375 put("mpeg", "video/mpeg");
376 put("mpg", "video/mpeg");
377 put("mpg4", "video/mp4");
378 put("mpga", "audio/mpeg");
379 put("mpn", "application/vnd.mophun.application");
380 put("mpp", "application/vnd.ms-project");
381 put("mps", "application/x-mapserver");
382 put("mpv2", "video/mpeg");
383 put("mrl", "text/x-mrml");
384 put("mrm", "application/x-mrm");
385 put("ms", "application/x-troff-ms");
386 put("msg", "application/vnd.ms-outlook");
387 put("mts", "application/metastream");
388 put("mtx", "application/metastream");
389 put("mtz", "application/metastream");
390 put("mvb", "application/x-msmediaview");
391 put("mzv", "application/metastream");
392 put("nar", "application/zip");
393 put("nbmp", "image/nbmp");
394 put("nc", "application/x-netcdf");
395 put("ndb", "x-lml/x-ndb");
396 put("ndwn", "application/ndwn");
397 put("nif", "application/x-nif");
398 put("nmz", "application/x-scream");
399 put("nokia-op-logo", "image/vnd.nok-oplogo-color");
400 put("npx", "application/x-netfpx");
401 put("nsnd", "audio/nsnd");
402 put("nva", "application/x-neva1");
403 put("nws", "message/rfc822");
404 put("oda", "application/oda");
405 put("ogg", "audio/ogg");
406 put("oom", "application/x-AtlasMate-Plugin");
407 put("p10", "application/pkcs10");
408 put("p12", "application/x-pkcs12");
409 put("p7b", "application/x-pkcs7-certificates");
410 put("p7c", "application/x-pkcs7-mime");
411 put("p7m", "application/x-pkcs7-mime");
412 put("p7r", "application/x-pkcs7-certreqresp");
413 put("p7s", "application/x-pkcs7-signature");
414 put("pac", "audio/x-pac");
415 put("pae", "audio/x-epac");
416 put("pan", "application/x-pan");
417 put("pbm", "image/x-portable-bitmap");
418 put("pcx", "image/x-pcx");
419 put("pda", "image/x-pda");
420 put("pdb", "chemical/x-pdb");
421 put("pdf", "application/pdf");
422 put("pfr", "application/font-tdpfr");
423 put("pfx", "application/x-pkcs12");
424 put("pgm", "image/x-portable-graymap");
425 put("pict", "image/x-pict");
426 put("pko", "application/ynd.ms-pkipko");
427 put("pm", "application/x-perl");
428 put("pma", "application/x-perfmon");
429 put("pmc", "application/x-perfmon");
430 put("pmd", "application/x-pmd");
431 put("pml", "application/x-perfmon");
432 put("pmr", "application/x-perfmon");
433 put("pmw", "application/x-perfmon");
434 put("png", "image/png");
435 put("pnm", "image/x-portable-anymap");
436 put("pnz", "image/png");
437 put("pot ", "application/vnd.ms-powerpoint");
438 put("ppm", "image/x-portable-pixmap");
439 put("pps", "application/vnd.ms-powerpoint");
440 put("ppt", "application/vnd.ms-powerpoint");
441 put("pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation");
442 put("pqf", "application/x-cprplayer");
443 put("pqi", "application/cprplayer");
444 put("prc", "application/x-prc");
445 put("prf", "application/pics-rules");
446 put("prop", "text/plain");
447 put("proxy", "application/x-ns-proxy-autoconfig");
448 put("ps", "application/postscript");
449 put("ptlk", "application/listenup");
450 put("pub", "application/x-mspublisher");
451 put("pvx", "video/x-pv-pvx");
452 put("qcp", "audio/vnd.qcelp");
453 put("qt", "video/quicktime");
454 put("qti", "image/x-quicktime");
455 put("qtif", "image/x-quicktime");
456 put("r3t", "text/vnd.rn-realtext3d");
457 put("ra", "audio/x-pn-realaudio");
458 put("ram", "audio/x-pn-realaudio");
459 put("rar", "application/octet-stream");
460 put("ras", "image/x-cmu-raster");
461 put("rc", "text/plain");
462 put("rdf", "application/rdf+xml");
463 put("rf", "image/vnd.rn-realflash");
464 put("rgb", "image/x-rgb");
465 put("rlf", "application/x-richlink");
466 put("rm", "audio/x-pn-realaudio");
467 put("rmf", "audio/x-rmf");
468 put("rmi", "audio/mid");
469 put("rmm", "audio/x-pn-realaudio");
470 put("rmvb", "audio/x-pn-realaudio");
471 put("rnx", "application/vnd.rn-realplayer");
472 put("roff", "application/x-troff");
473 put("rp", "image/vnd.rn-realpix");
474 put("rpm", "audio/x-pn-realaudio-plugin");
475 put("rt", "text/vnd.rn-realtext");
476 put("rte", "x-lml/x-gps");
477 put("rtf", "application/rtf");
478 put("rtg", "application/metastream");
479 put("rtx", "text/richtext");
480 put("rv", "video/vnd.rn-realvideo");
481 put("rwc", "application/x-rogerwilco");
482 put("s3m", "audio/x-mod");
483 put("s3z", "audio/x-mod");
484 put("sca", "application/x-supercard");
485 put("scd", "application/x-msschedule");
486 put("sct", "text/scriptlet");
487 put("sdf", "application/e-score");
488 put("sea", "application/x-stuffit");
489 put("setpay", "application/set-payment-initiation");
490 put("setreg", "application/set-registration-initiation");
491 put("sgm", "text/x-sgml");
492 put("sgml", "text/x-sgml");
493 put("sh", "application/x-sh");
494 put("shar", "application/x-shar");
495 put("shtml", "magnus-internal/parsed-html");
496 put("shw", "application/presentations");
497 put("si6", "image/si6");
498 put("si7", "image/vnd.stiwap.sis");
499 put("si9", "image/vnd.lgtwap.sis");
500 put("sis", "application/vnd.symbian.install");
501 put("sit", "application/x-stuffit");
502 put("skd", "application/x-Koan");
503 put("skm", "application/x-Koan");
504 put("skp", "application/x-Koan");
505 put("skt", "application/x-Koan");
506 put("slc", "application/x-salsa");
507 put("smd", "audio/x-smd");
508 put("smi", "application/smil");
509 put("smil", "application/smil");
510 put("smp", "application/studiom");
511 put("smz", "audio/x-smd");
512 put("snd", "audio/basic");
513 put("spc", "application/x-pkcs7-certificates");
514 put("spl", "application/futuresplash");
515 put("spr", "application/x-sprite");
516 put("sprite", "application/x-sprite");
517 put("sdp", "application/sdp");
518 put("spt", "application/x-spt");
519 put("src", "application/x-wais-source");
520 put("sst", "application/vnd.ms-pkicertstore");
521 put("stk", "application/hyperstudio");
522 put("stl", "application/vnd.ms-pkistl");
523 put("stm", "text/html");
524 put("svg", "image/svg+xml");
525 put("sv4cpio", "application/x-sv4cpio");
526 put("sv4crc", "application/x-sv4crc");
527 put("svf", "image/vnd");
528 put("svh", "image/svh");
529 put("svr", "x-world/x-svr");
530 put("swf", "application/x-shockwave-flash");
531 put("swfl", "application/x-shockwave-flash");
532 put("t", "application/x-troff");
533 put("tad", "application/octet-stream");
534 put("talk", "text/x-speech");
535 put("tar", "application/x-tar");
536 put("taz", "application/x-tar");
537 put("tbp", "application/x-timbuktu");
538 put("tbt", "application/x-timbuktu");
539 put("tcl", "application/x-tcl");
540 put("tex", "application/x-tex");
541 put("texi", "application/x-texinfo");
542 put("texinfo", "application/x-texinfo");
543 put("tgz", "application/x-compressed");
544 put("thm", "application/vnd.eri.thm");
545 put("tif", "image/tiff");
546 put("tiff", "image/tiff");
547 put("tki", "application/x-tkined");
548 put("tkined", "application/x-tkined");
549 put("toc", "application/toc");
550 put("toy", "image/toy");
551 put("tr", "application/x-troff");
552 put("trk", "x-lml/x-gps");
553 put("trm", "application/x-msterminal");
554 put("tsi", "audio/tsplayer");
555 put("tsp", "application/dsptype");
556 put("tsv", "text/tab-separated-values");
557 put("ttf", "application/octet-stream");
558 put("ttz", "application/t-time");
559 put("txt", "text/plain");
560 put("uls", "text/iuls");
561 put("ult", "audio/x-mod");
562 put("ustar", "application/x-ustar");
563 put("uu", "application/x-uuencode");
564 put("uue", "application/x-uuencode");
565 put("vcd", "application/x-cdlink");
566 put("vcf", "text/x-vcard");
567 put("vdo", "video/vdo");
568 put("vib", "audio/vib");
569 put("viv", "video/vivo");
570 put("vivo", "video/vivo");
571 put("vmd", "application/vocaltec-media-desc");
572 put("vmf", "application/vocaltec-media-file");
573 put("vmi", "application/x-dreamcast-vms-info");
574 put("vms", "application/x-dreamcast-vms");
575 put("vox", "audio/voxware");
576 put("vqe", "audio/x-twinvq-plugin");
577 put("vqf", "audio/x-twinvq");
578 put("vql", "audio/x-twinvq");
579 put("vre", "x-world/x-vream");
580 put("vrml", "x-world/x-vrml");
581 put("vrt", "x-world/x-vrt");
582 put("vrw", "x-world/x-vream");
583 put("vts", "workbook/formulaone");
584 put("wav", "audio/x-wav");
585 put("wax", "audio/x-ms-wax");
586 put("wbmp", "image/vnd.wap.wbmp");
587 put("wcm", "application/vnd.ms-works");
588 put("wdb", "application/vnd.ms-works");
589 put("web", "application/vnd.xara");
590 put("wi", "image/wavelet");
591 put("wis", "application/x-InstallShield");
592 put("wks", "application/vnd.ms-works");
593 put("wm", "video/x-ms-wm");
594 put("wma", "audio/x-ms-wma");
595 put("wmd", "application/x-ms-wmd");
596 put("wmf", "application/x-msmetafile");
597 put("wml", "text/vnd.wap.wml");
598 put("wmlc", "application/vnd.wap.wmlc");
599 put("wmls", "text/vnd.wap.wmlscript");
600 put("wmlsc", "application/vnd.wap.wmlscriptc");
601 put("wmlscript", "text/vnd.wap.wmlscript");
602 put("wmv", "audio/x-ms-wmv");
603 put("wmx", "video/x-ms-wmx");
604 put("wmz", "application/x-ms-wmz");
605 put("wpng", "image/x-up-wpng");
606 put("wps", "application/vnd.ms-works");
607 put("wpt", "x-lml/x-gps");
608 put("wri", "application/x-mswrite");
609 put("wrl", "x-world/x-vrml");
610 put("wrz", "x-world/x-vrml");
611 put("ws", "text/vnd.wap.wmlscript");
612 put("wsc", "application/vnd.wap.wmlscriptc");
613 put("wv", "video/wavelet");
614 put("wvx", "video/x-ms-wvx");
615 put("wxl", "application/x-wxl");
616 put("x-gzip", "application/x-gzip");
617 put("xaf", "x-world/x-vrml");
618 put("xar", "application/vnd.xara");
619 put("xbm", "image/x-xbitmap");
620 put("xdm", "application/x-xdma");
621 put("xdma", "application/x-xdma");
622 put("xdw", "application/vnd.fujixerox.docuworks");
623 put("xht", "application/xhtml+xml");
624 put("xhtm", "application/xhtml+xml");
625 put("xhtml", "application/xhtml+xml");
626 put("xla", "application/vnd.ms-excel");
627 put("xlc", "application/vnd.ms-excel");
628 put("xll", "application/x-excel");
629 put("xlm", "application/vnd.ms-excel");
630 put("xls", "application/vnd.ms-excel");
631 put("xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
632 put("xlt", "application/vnd.ms-excel");
633 put("xlw", "application/vnd.ms-excel");
634 put("xm", "audio/x-mod");
635 /* put("xml", "text/plain");*/
636 put("xml", "application/xml");
637 put("xmz", "audio/x-mod");
638 put("xof", "x-world/x-vrml");
639 put("xpi", "application/x-xpinstall");
640 put("xpm", "image/x-xpixmap");
641 put("xsit", "text/xml");
642 put("xsl", "text/xml");
643 put("xul", "text/xul");
644 put("xwd", "image/x-xwindowdump");
645 put("xyz", "chemical/x-pdb");
646 put("yz1", "application/x-yz1");
647 put("z", "application/x-compress");
648 put("zac", "application/x-zaurus-zac");
649 put("zip", "application/zip");
650 put("json", "application/json");
651 }
652 };
653 }
1 package com.pashanhoo.common.util.mybatisplus;
2
3 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
4 import com.baomidou.mybatisplus.generator.InjectionConfig;
5 import com.baomidou.mybatisplus.generator.config.ConstVal;
6 import com.baomidou.mybatisplus.generator.config.FileOutConfig;
7 import com.baomidou.mybatisplus.generator.config.TemplateConfig;
8 import com.baomidou.mybatisplus.generator.config.po.TableField;
9 import com.baomidou.mybatisplus.generator.config.po.TableInfo;
10 import com.baomidou.mybatisplus.generator.config.rules.FileType;
11 import com.baomidou.mybatisplus.generator.engine.AbstractTemplateEngine;
12
13 import java.io.File;
14 import java.util.*;
15
16 public abstract class AbstractTemplateEngineLocal extends AbstractTemplateEngine {
17
18 private void fitAddEntityRequest(List<TableField> tableFields, TableInfo tableInfo) {
19 for(Iterator<TableField> it = tableFields.iterator(); it.hasNext();){
20 TableField tableField =it.next();
21 if(tableField.isKeyIdentityFlag() || "ADDTIME".equals(tableField.getName()) || "EDITTIME".equals(tableField.getName())) {
22 it.remove();
23 }
24 }
25
26 Set<String> importPacks = tableInfo.getImportPackages();
27 for(Iterator<String> it = importPacks.iterator(); it.hasNext();){
28 String importPack = it.next();
29 if(importPack.indexOf("baomidou") > 0){
30 it.remove();
31 }
32 }
33
34 }
35
36 private void fillEntityProp(Map<String, Object> objectMap) {
37 TableInfo tableInfo = (TableInfo) objectMap.get("table");
38 int addFieldFillPacCount = 0;
39 for(TableField tableField : tableInfo.getFields()) {
40 tableField.setConvert(true);
41 if("ADDTIME".equals(tableField.getName())) {
42 tableField.setFill("INSERT");
43 if(addFieldFillPacCount == 0) {
44 tableInfo.getImportPackages().add("com.baomidou.mybatisplus.annotation.FieldFill");
45 addFieldFillPacCount++;
46 }
47 }
48 if("UPDATETIME".equals(tableField.getName())) {
49 tableField.setFill("INSERT_UPDATE");
50 }
51 }
52
53 }
54
55 /**
56 * list深度拷贝
57 * @param list
58 * @return
59 */
60 public List copyList(List list) {
61 //list深度拷贝
62 List<Integer> newList = new ArrayList<>();
63 org.apache.commons.collections.CollectionUtils.addAll(newList, new Object[list.size()]);
64 Collections.copy(newList, list);
65 return newList;
66 }
67
68 /**
69 * 输出 java xml 文件
70 */
71 @Override
72 public AbstractTemplateEngine batchOutput() {
73 try {
74 List<TableInfo> tableInfoList = getConfigBuilder().getTableInfoList();
75 for (TableInfo tableInfo : tableInfoList) {
76 Map<String, Object> objectMap = getObjectMap(tableInfo);
77 Map<String, String> pathInfo = getConfigBuilder().getPathInfo();
78 TemplateConfig template = getConfigBuilder().getTemplate();
79 // 自定义内容
80 InjectionConfig injectionConfig = getConfigBuilder().getInjectionConfig();
81 if (null != injectionConfig) {
82 injectionConfig.initTableMap(tableInfo);
83 objectMap.put("cfg", injectionConfig.getMap());
84 List<FileOutConfig> focList = injectionConfig.getFileOutConfigList();
85 if (CollectionUtils.isNotEmpty(focList)) {
86 for (FileOutConfig foc : focList) {
87 if (isCreate(FileType.OTHER, foc.outputFile(tableInfo))) {
88 writer(objectMap, foc.getTemplatePath(), foc.outputFile(tableInfo));
89 }
90 }
91 }
92 }
93 // Mp.java
94 String entityName = tableInfo.getEntityName();
95 List<TableField> originalTableFieldList = tableInfo.getFields();
96 if (null != entityName && null != pathInfo.get(ConstVal.ENTITY_PATH)) {
97 fillEntityProp(objectMap);
98 String entityFile = String.format((pathInfo.get(ConstVal.ENTITY_PATH) + File.separator + "%s" + "DO" + suffixJavaOrKt()), entityName) ;
99 if (isCreate(FileType.ENTITY, entityFile)) {
100 writer(objectMap, templateFilePath(template.getEntity(getConfigBuilder().getGlobalConfig().isKotlin())), entityFile);
101 }
102
103 List<TableField> originalTableFields = tableInfo.getFields();
104 List<TableField> addEntityTableFieldList = copyList(tableInfo.getFields());
105 fitAddEntityRequest(addEntityTableFieldList, tableInfo);
106 tableInfo.setFields(addEntityTableFieldList);
107
108 //向ObjectMap中添加首字母小写的实体对象名
109 String entity = (String) objectMap.get("entity");
110 objectMap.put("lowerEntity", entity.toLowerCase());
111
112 //AddEntityRequest.java
113 fitAddEntityRequest(tableInfo.getFields(), tableInfo);
114 String addEntityRequestFile = String.format((pathInfo.get(ConstVal.ENTITY_PATH) + File.separator + "%s" + suffixJavaOrKt()), "Add" + entityName + "Request");
115 if (isCreate(FileType.ENTITY, addEntityRequestFile)) {
116 writer(objectMap, "templates/AddEntityRequest.java.ftl", addEntityRequestFile);
117 }
118
119 //UpdateEntityRequest.java
120 fitAddEntityRequest(tableInfo.getFields(), tableInfo);
121 String updateEntityRequestFile = String.format((pathInfo.get(ConstVal.ENTITY_PATH) + File.separator + "%s" + suffixJavaOrKt()), "Update" + entityName + "Request");
122 if (isCreate(FileType.ENTITY, updateEntityRequestFile)) {
123 writer(objectMap, "templates/UpdateEntityRequest.java.ftl", updateEntityRequestFile);
124 }
125
126
127 //EntitySearchRequest.java
128 String entitySearchRequestFile = String.format((pathInfo.get(ConstVal.ENTITY_PATH) + File.separator + "%s" + suffixJavaOrKt()), entityName + "SearchRequest");
129 if (isCreate(FileType.ENTITY, entitySearchRequestFile)) {
130 writer(objectMap, "templates/EntitySearchRequest.java.ftl", entitySearchRequestFile);
131 }
132
133 tableInfo.setFields(originalTableFields);
134 //EntityListVO.java
135 String entityListVOFile = String.format((pathInfo.get(ConstVal.ENTITY_PATH) + File.separator + "%s" + suffixJavaOrKt()), entityName + "ListVO");
136 if (isCreate(FileType.ENTITY, entityListVOFile)) {
137 writer(objectMap, "templates/EntityListVO.java.ftl", entityListVOFile);
138 }
139
140 //EntityDetailVO.java
141 String entityDetailVOFile = String.format((pathInfo.get(ConstVal.ENTITY_PATH) + File.separator + "%s" + suffixJavaOrKt()), entityName + "DetailVO");
142 if (isCreate(FileType.ENTITY, entityDetailVOFile)) {
143 writer(objectMap, "templates/EntityDetailVO.java.ftl", entityDetailVOFile);
144 }
145 }
146
147 //converter.java
148 String entityConverterFile = String.format((pathInfo.get(ConstVal.ENTITY_PATH) + File.separator + "%s" + suffixJavaOrKt()), entityName + "Converter");
149 if (isCreate(FileType.ENTITY, entityConverterFile)) {
150 writer(objectMap, "templates/entityConverter.java.ftl", entityConverterFile);
151 }
152
153 // MpMapper.java
154 if (null != tableInfo.getMapperName() && null != pathInfo.get(ConstVal.MAPPER_PATH)) {
155 String mapperFile = String.format((pathInfo.get(ConstVal.MAPPER_PATH) + File.separator + tableInfo.getMapperName() + suffixJavaOrKt()), entityName);
156 if (isCreate(FileType.MAPPER, mapperFile)) {
157 writer(objectMap, templateFilePath(template.getMapper()), mapperFile);
158 }
159 }
160 // MpMapper.xml
161 if (null != tableInfo.getXmlName() && null != pathInfo.get(ConstVal.XML_PATH)) {
162 String xmlFile = String.format((pathInfo.get(ConstVal.XML_PATH) + File.separator + tableInfo.getXmlName() + ConstVal.XML_SUFFIX), entityName);
163 if (isCreate(FileType.XML, xmlFile)) {
164 writer(objectMap, templateFilePath(template.getXml()), xmlFile);
165 }
166 }
167
168 // IMpService.java
169 if (null != tableInfo.getServiceName() && null != pathInfo.get(ConstVal.SERVICE_PATH)) {
170 String serviceFile = String.format((pathInfo.get(ConstVal.SERVICE_PATH) + File.separator + tableInfo.getServiceName() + suffixJavaOrKt()), entityName);
171 if (isCreate(FileType.SERVICE, serviceFile)) {
172 writer(objectMap, templateFilePath(template.getService()), serviceFile);
173 }
174 }
175 // MpServiceImpl.java
176 if (null != tableInfo.getServiceImplName() && null != pathInfo.get(ConstVal.SERVICE_IMPL_PATH)) {
177 String implFile = String.format((pathInfo.get(ConstVal.SERVICE_IMPL_PATH) + File.separator + tableInfo.getServiceImplName() + suffixJavaOrKt()), entityName);
178 if (isCreate(FileType.SERVICE_IMPL, implFile)) {
179 writer(objectMap, templateFilePath(template.getServiceImpl()), implFile);
180 }
181 }
182 // MpController.java
183 if (null != tableInfo.getControllerName() && null != pathInfo.get(ConstVal.CONTROLLER_PATH)) {
184 String controllerFile = String.format((pathInfo.get(ConstVal.CONTROLLER_PATH) + File.separator + tableInfo.getControllerName() + suffixJavaOrKt()), entityName);
185 if (isCreate(FileType.CONTROLLER, controllerFile)) {
186 writer(objectMap, templateFilePath(template.getController()), controllerFile);
187 }
188 }
189 }
190 } catch (Exception e) {
191 logger.error("无法创建文件,请检查配置信息!", e);
192 }
193 return this;
194 }
195
196 }
1 package com.pashanhoo.common.util.mybatisplus;
2
3 import com.baomidou.mybatisplus.core.toolkit.StringPool;
4 import com.baomidou.mybatisplus.generator.config.ConstVal;
5 import com.baomidou.mybatisplus.generator.config.builder.ConfigBuilder;
6 import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
7 import freemarker.template.Configuration;
8 import freemarker.template.Template;
9
10 import java.io.FileOutputStream;
11 import java.io.OutputStreamWriter;
12 import java.util.Map;
13
14 public class MyFreemarkerTemplateEngine extends AbstractTemplateEngineLocal {
15
16 private Configuration configuration;
17
18 @Override
19 public MyFreemarkerTemplateEngine init(ConfigBuilder configBuilder) {
20 super.init(configBuilder);
21 configuration = new Configuration(Configuration.DEFAULT_INCOMPATIBLE_IMPROVEMENTS);
22 configuration.setDefaultEncoding(ConstVal.UTF8);
23 configuration.setClassForTemplateLoading(FreemarkerTemplateEngine.class, StringPool.SLASH);
24 return this;
25 }
26
27
28 @Override
29 public void writer(Map<String, Object> objectMap, String templatePath, String outputFile) throws Exception {
30 Template template = configuration.getTemplate(templatePath);
31 try (FileOutputStream fileOutputStream = new FileOutputStream(outputFile)) {
32 template.process(objectMap, new OutputStreamWriter(fileOutputStream, ConstVal.UTF8));
33 }
34 logger.debug("模板:" + templatePath + "; 文件:" + outputFile);
35 }
36
37
38 @Override
39 public String templateFilePath(String filePath) {
40 return filePath + ".ftl";
41 }
42
43 }
1 package com.pashanhoo.destroy.controller;
2
3 import com.pashanhoo.archive.entity.vo.DgArchivesSearchRequest;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.destroy.entity.vo.AddDgArchivesDestructionRequest;
6 import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionSearchRequest;
7 import com.pashanhoo.destroy.entity.vo.UpdateDgArchivesDestructionRequest;
8 import com.pashanhoo.destroy.service.DgArchivesDestructionService;
9 import com.pashanhoo.destroycatalog.entity.vo.AddDgDestructionCatalogRequest;
10 import org.springframework.web.bind.annotation.RestController;
11 import org.springframework.web.bind.annotation.*;
12 import io.swagger.annotations.Api;
13 import io.swagger.annotations.ApiOperation;
14 import io.swagger.annotations.ApiParam;
15 import org.springframework.beans.factory.annotation.Autowired;
16
17 import java.util.List;
18
19 /**
20 * <p>
21 * 档案销毁 前端控制器
22 * </p>
23 *
24 * @author
25 * @since 2021-11-05
26 */
27 @RestController
28 @RequestMapping("/system/dgArchivesDestruction/")
29 @Api(tags = "档案销毁接口")
30 public class DgArchivesDestructionController {
31 @Autowired
32 private DgArchivesDestructionService dgarchivesdestructionService;
33
34 @PostMapping("search")
35 @ApiOperation(value = "根据条件进行列表查询")
36 public Result searchDgArchivesDestructionList(@RequestBody DgArchivesDestructionSearchRequest request) {
37 return dgarchivesdestructionService.searchDgArchivesDestructionList(request);
38 }
39 @GetMapping("deleteDgArchivesDestructionByIds")
40 @ApiOperation(value = "根据销毁记录标识码删除档案销毁记录")
41 public Result deleteDgArchivesDestructionByIds(@ApiParam("档案销毁ID") @RequestParam(value = "bsm_destruction") String bsm_destruction) {
42 return dgarchivesdestructionService.deleteDgArchivesDestruction(bsm_destruction);
43 }
44 @GetMapping("getDgArchivesDestructionDetailById")
45 @ApiOperation(value = "查询档案销毁信息")
46 public Result getDgArchivesDestructionDetailById(@ApiParam("档案销毁ID") @RequestParam String bsm_destruction) {
47 return Result.ok(dgarchivesdestructionService.getDgArchivesDestructionDetailById(bsm_destruction));
48 }
49 @PostMapping("showArchivesForDestruction")
50 @ApiOperation("展示可以选择销毁的列表")
51 public Result showArchivesForDestruction(@RequestBody DgArchivesSearchRequest request) {
52 return dgarchivesdestructionService.showArchivesForDestruction(request);
53 }
54 @PostMapping("addDestructionArchivesInfo")
55 @ApiOperation(value = "选择销毁档案List")
56 public Result addDestructionArchivesInfo(@ApiParam("案卷基本信息ID列表") @RequestParam(value = "idList") List<String> idList) {
57 return dgarchivesdestructionService.addDestructionArchivesInfo(idList);
58 }
59 @PostMapping("updateDgArchivesDestruction")
60 @ApiOperation("修改档案销毁记录信息")
61 public Result updateDgArchivesDestruction(@RequestBody UpdateDgArchivesDestructionRequest request) {
62 if (dgarchivesdestructionService.updateDgArchivesDestruction(request)) {
63 return Result.ok("修改成功");
64 }
65 return Result.error("修改失败");
66 }
67 @GetMapping("deleteArchivesInfo")
68 @ApiOperation(value = "删除档案列表中的档案信息")
69 public Result deleteArchivesInfo(@ApiParam("档案ID") @RequestParam(value = "bsmArchives") String bsmArchives) {
70 return dgarchivesdestructionService.deleteDestructionArchivescataLog(bsmArchives);
71 }
72 @GetMapping("getDestructionArchivescataLog")
73 @ApiOperation(value = "查询档案销毁目录信息")
74 public Result getDestructionArchivescataLog(@ApiParam("档案销毁ID") @RequestParam(value = "bsm_destruction") String bsm_destruction) {
75 return dgarchivesdestructionService.queryArchivesInfo(bsm_destruction);
76 }
77 @GetMapping("deleteDestructionArchivescataLog")
78 @ApiOperation(value = "删除档案销毁目录信息")
79 public Result deleteDestructionArchivescataLog(@ApiParam("档案销毁ID") @RequestParam(value = "bsm_destruction") String bsm_destruction) {
80 return dgarchivesdestructionService.deleteDestructionArchivescataLog(bsm_destruction);
81 }
82 @GetMapping("updateArchivesStateByDestruction")
83 @ApiOperation(value = "销毁操作")
84 public Result updateArchivesStateByDestruction(@ApiParam("档案销毁记录ID") @RequestParam(value = "bsm_destruction") String bsm_destruction) {
85 return dgarchivesdestructionService.updateArchivesStateByDestruction(bsm_destruction);
86 }
87 @GetMapping("getDestroyLeftMenu")
88 @ApiOperation(value = "根据销毁清册编号获取左侧档案号菜单")
89 public Result getDestroyLeftMenu(@ApiParam("销毁清册编号") @RequestParam String xhqcbh) {
90 return Result.ok(dgarchivesdestructionService.getDestroyLeftMenu(xhqcbh));
91 }
92 }
1 package com.pashanhoo.destroy.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.destroy.entity.vo.AddDgArchivesDestructionRequest;
6 import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionDetailVO;
7 import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionListVO;
8 import com.pashanhoo.destroy.entity.vo.UpdateDgArchivesDestructionRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgArchivesDestructionConverter{
17 DgArchivesDestructionDO addRequest2DO(AddDgArchivesDestructionRequest request);
18
19 DgArchivesDestructionDetailVO do2DetailVO(DgArchivesDestructionDO dgarchivesdestructionDO);
20
21 DgArchivesDestructionDO updateRequest2DO(UpdateDgArchivesDestructionRequest request);
22
23 DgArchivesDestructionListVO do2ListVO(DgArchivesDestructionDO dgarchivesdestructionDO);
24
25 List<DgArchivesDestructionListVO> doList2ListVOList(List<DgArchivesDestructionDO> dgarchivesdestructionDOList);
26 }
1 package com.pashanhoo.destroy.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import java.util.Date;
6 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableField;
8 import java.io.Serializable;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11
12 /**
13 * <p>
14 * 档案销毁
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @TableName("DG_ARCHIVES_DESTRUCTION")
23 public class DgArchivesDestructionDO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 销毁标识码
29 */
30 @TableId(value = "BSM_DESTRUCTION", type = IdType.UUID)
31 private String bsmDestruction;
32
33 /**
34 * 销毁清册编号
35 */
36 @TableField("XHQCBH")
37 private String xhqcbh;
38
39 /**
40 * 发起人
41 */
42 @TableField("FQR")
43 private String fqr;
44
45 /**
46 * 发起日期
47 */
48 @TableField("FQRQ")
49 private Date fqrq;
50
51 /**
52 * 销毁原因
53 */
54 @TableField("XHYY")
55 private String xhyy;
56
57 /**
58 * 审核人
59 */
60 @TableField("SHRY")
61 private String shry;
62
63 /**
64 * 审批意见
65 */
66 @TableField("SHYJ")
67 private String shyj;
68
69 /**
70 * 监销人
71 */
72 @TableField("XHR")
73 private String xhr;
74
75 /**
76 * 销毁日期
77 */
78 @TableField("XHRQ")
79 private Date xhrq;
80 /**
81 * 状态 1:销毁中,2:已销毁
82 */
83 @TableField("STATE")
84 private String state;
85
86 }
1 package com.pashanhoo.destroy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案销毁新增请求实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案销毁新增请求实体")
22 public class AddDgArchivesDestructionRequest implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26
27 /**
28 * 销毁清册编号
29 */
30 @ApiModelProperty(name = "xhqcbh", value = "销毁清册编号")
31 private String xhqcbh;
32
33 /**
34 * 发起人
35 */
36 @ApiModelProperty(name = "fqr", value = "发起人")
37 private String fqr;
38
39 /**
40 * 发起日期
41 */
42 @ApiModelProperty(name = "fqrq", value = "发起日期")
43 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
44 private Date fqrq;
45
46 /**
47 * 销毁原因
48 */
49 @ApiModelProperty(name = "xhyy", value = "销毁原因")
50 private String xhyy;
51
52 /**
53 * 审核人
54 */
55 @ApiModelProperty(name = "shry", value = "审核人")
56 private String shry;
57
58 /**
59 * 审批意见
60 */
61 @ApiModelProperty(name = "shyj", value = "审批意见")
62 private String shyj;
63
64 /**
65 * 监销人
66 */
67 @ApiModelProperty(name = "xhr", value = "监销人")
68 private String xhr;
69
70 /**
71 * 销毁日期
72 */
73 @ApiModelProperty(name = "xhrq", value = "销毁日期")
74 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
75 private Date xhrq;
76
77
78 }
1 package com.pashanhoo.destroy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案销毁明细实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案销毁明细实体")
22 public class DgArchivesDestructionDetailVO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 销毁标识码
28 */
29 @ApiModelProperty(name = "bsmDestruction", value = "销毁标识码")
30 private String bsmDestruction;
31
32 /**
33 * 销毁清册编号
34 */
35 @ApiModelProperty(name = "xhqcbh", value = "销毁清册编号")
36 private String xhqcbh;
37
38 /**
39 * 发起人
40 */
41 @ApiModelProperty(name = "fqr", value = "发起人")
42 private String fqr;
43
44 /**
45 * 发起日期
46 */
47 @ApiModelProperty(name = "fqrq", value = "发起日期")
48 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
49 private Date fqrq;
50
51 /**
52 * 销毁原因
53 */
54 @ApiModelProperty(name = "xhyy", value = "销毁原因")
55 private String xhyy;
56
57 /**
58 * 审核人
59 */
60 @ApiModelProperty(name = "shry", value = "审核人")
61 private String shry;
62
63 /**
64 * 审批意见
65 */
66 @ApiModelProperty(name = "shyj", value = "审批意见")
67 private String shyj;
68
69 /**
70 * 监销人
71 */
72 @ApiModelProperty(name = "xhr", value = "监销人")
73 private String xhr;
74
75 /**
76 * 销毁日期
77 */
78 @ApiModelProperty(name = "xhrq", value = "销毁日期")
79 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
80 private Date xhrq;
81
82
83 }
1 package com.pashanhoo.destroy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案销毁列表VO
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案销毁列表VO")
22 public class DgArchivesDestructionListVO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 销毁标识码
28 */
29 @ApiModelProperty(name = "bsmDestruction", value = "销毁标识码")
30 private String bsmDestruction;
31
32 /**
33 * 销毁清册编号
34 */
35 @ApiModelProperty(name = "xhqcbh", value = "销毁清册编号")
36 private String xhqcbh;
37
38 /**
39 * 发起人
40 */
41 @ApiModelProperty(name = "fqr", value = "发起人")
42 private String fqr;
43
44 /**
45 * 发起日期
46 */
47 @ApiModelProperty(name = "fqrq", value = "发起日期")
48 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
49 private Date fqrq;
50
51 /**
52 * 销毁原因
53 */
54 @ApiModelProperty(name = "xhyy", value = "销毁原因")
55 private String xhyy;
56
57 /**
58 * 审核人
59 */
60 @ApiModelProperty(name = "shry", value = "审核人")
61 private String shry;
62
63 /**
64 * 审批意见
65 */
66 @ApiModelProperty(name = "shyj", value = "审批意见")
67 private String shyj;
68
69 /**
70 * 监销人
71 */
72 @ApiModelProperty(name = "xhr", value = "监销人")
73 private String xhr;
74
75 /**
76 * 销毁日期
77 */
78 @ApiModelProperty(name = "xhrq", value = "销毁日期")
79 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
80 private Date xhrq;
81 /**
82 * 数量(卷)
83 */
84 @ApiModelProperty(name = "ajNum", value = "数量(卷)")
85 private String ajNum;
86
87 }
1 package com.pashanhoo.destroy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import com.pashanhoo.common.PageInfo;
10 import org.springframework.format.annotation.DateTimeFormat;
11
12 /**
13 * <p>
14 * 档案销毁列表查询请求实体
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @ApiModel(value="档案销毁列表查询请求实体")
23 public class DgArchivesDestructionSearchRequest extends PageInfo implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27
28 /**
29 * 销毁清册编号
30 */
31 @ApiModelProperty(name = "xhqcbh", value = "销毁清册编号")
32 private String xhqcbh;
33 /**
34 * 档案号
35 */
36 @ApiModelProperty(name = "ajh", value = "档案号")
37 private String ajh;
38
39 /**
40 * 销毁日期
41 */
42 @ApiModelProperty(name = "xhrq", value = "销毁日期")
43 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
44 private Date xhrq;
45
46
47 }
1 package com.pashanhoo.destroy.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案销毁修改请求实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案销毁修改请求实体")
22 public class UpdateDgArchivesDestructionRequest implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 销毁标识码
28 */
29 @ApiModelProperty(name = "bsmDestruction", value = "销毁标识码")
30 private String bsmDestruction;
31
32 /**
33 * 销毁清册编号
34 */
35 @ApiModelProperty(name = "xhqcbh", value = "销毁清册编号")
36 private String xhqcbh;
37
38 /**
39 * 发起人
40 */
41 @ApiModelProperty(name = "fqr", value = "发起人")
42 private String fqr;
43
44 /**
45 * 发起日期
46 */
47 @ApiModelProperty(name = "fqrq", value = "发起日期")
48 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
49 private Date fqrq;
50
51 /**
52 * 销毁原因
53 */
54 @ApiModelProperty(name = "xhyy", value = "销毁原因")
55 private String xhyy;
56
57 /**
58 * 审核人
59 */
60 @ApiModelProperty(name = "shry", value = "审核人")
61 private String shry;
62
63 /**
64 * 审批意见
65 */
66 @ApiModelProperty(name = "shyj", value = "审批意见")
67 private String shyj;
68
69 /**
70 * 监销人
71 */
72 @ApiModelProperty(name = "xhr", value = "监销人")
73 private String xhr;
74
75 /**
76 * 销毁日期
77 */
78 @ApiModelProperty(name = "xhrq", value = "销毁日期")
79 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
80 private Date xhrq;
81
82
83 }
1 package com.pashanhoo.destroy.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.archive.entity.DgArchivesDO;
5 import com.pashanhoo.archive.entity.vo.DgArchivesListVO;
6 import com.pashanhoo.destroy.entity.DgArchivesDestructionDO;
7 import org.apache.ibatis.annotations.Param;
8
9 import java.util.List;
10 import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionListVO;
11 import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionSearchRequest;
12
13 /**
14 * <p>
15 * 档案销毁 Mapper 接口
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 public interface DgArchivesDestructionMapper extends BaseMapper<DgArchivesDestructionDO> {
22
23 /**
24 * 根据销毁清册编号获取左侧档案号菜单
25 *
26 * @param xhqcbh 销毁清册编号
27 * @return
28 */
29 List<DgArchivesDO> getDestroyLeftMenu(@Param("xhqcbh") String xhqcbh);
30
31 List<DgArchivesDestructionListVO> selectXhResult(DgArchivesDestructionSearchRequest request);
32
33 boolean updateArchivesStatus(@Param("bsm_destruction") String bsm_destruction,@Param("dazt") String dazt);
34
35 List<DgArchivesListVO> queryArchivesInfo(@Param("bsm_destruction") String bsm_destruction);
36
37 boolean updateArchivesStatusBatch(@Param("idList") List<String> idList,@Param("dazt") String dazt);
38
39 boolean updateDestructionArchivesStatus(@Param("bsm_destruction") String bsm_destruction,@Param("dazt") String dazt);
40
41 }
1 package com.pashanhoo.destroy.service;
2
3
4 import com.baomidou.mybatisplus.extension.service.IService;
5 import com.pashanhoo.archive.entity.vo.DgArchivesSearchRequest;
6 import com.pashanhoo.common.Result;
7 import com.pashanhoo.destroy.entity.DgArchivesDestructionDO;
8 import com.pashanhoo.destroy.entity.vo.AddDgArchivesDestructionRequest;
9 import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionDetailVO;
10 import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionSearchRequest;
11 import com.pashanhoo.destroy.entity.vo.UpdateDgArchivesDestructionRequest;
12 import com.pashanhoo.destroycatalog.entity.vo.AddDgDestructionCatalogRequest;
13
14 import java.util.List;
15
16 /**
17 * <p>
18 * 档案销毁 服务类
19 * </p>
20 *
21 * @author
22 * @since 2021-11-05
23 */
24 public interface DgArchivesDestructionService extends IService<DgArchivesDestructionDO> {
25
26 /**
27 * 根据条件进行列表查询
28 * @param request
29 * @return
30 */
31 Result searchDgArchivesDestructionList(DgArchivesDestructionSearchRequest request);
32 /**
33 * 删除记录
34 * @param bsm_destruction
35 * @return
36 */
37 Result deleteDgArchivesDestruction(String bsm_destruction);
38 /**
39 * 根据条件进行列表查询
40 * @param bsm_destruction
41 * @return
42 */
43 Result queryArchivesInfo(String bsm_destruction);
44 /**
45 * 根据条件进行列表查询
46 * @param bsmArchives
47 * @return
48 */
49 Result deleteDestructionArchivescataLog(String bsmArchives);
50 /**
51 * 选择销毁档案List
52 * @param idList
53 * @return
54 */
55 Result addDestructionArchivesInfo(List<String> idList);
56 /**
57 * 销毁接口
58 * @param bsm_destruction
59 * @return
60 */
61 Result updateArchivesStateByDestruction(String bsm_destruction);
62 /**
63 * 新增档案销毁列表中的档案销毁操作
64 * @param idList
65 * @return
66 */
67 Result updateStateByArchives(List<String> idList);
68
69 /**
70 /**
71 * 新增记录
72 *
73 * @param request
74 * @return
75 */
76 Result insertDgArchivesDestruction(AddDgArchivesDestructionRequest request);
77 /**
78 * 展示可以销毁的档案列表
79 * @param request
80 * @return
81 */
82 Result showArchivesForDestruction( DgArchivesSearchRequest request);
83 /**
84 * 根据主键查询记录详情
85 *
86 * @param id
87 * @return
88 */
89 DgArchivesDestructionDetailVO getDgArchivesDestructionDetailById(String id);
90
91 /**
92 * 修改单条记录
93 *
94 * @param request
95 * @return
96 */
97 boolean updateDgArchivesDestruction(UpdateDgArchivesDestructionRequest request);
98
99
100
101 /**
102 * 根据销毁清册编号获取左侧档案号菜单
103 *
104 * @param xhqcbh 销毁清册编号
105 * @return
106 */
107 List getDestroyLeftMenu(String xhqcbh);
108 }
1 package com.pashanhoo.destroy.service.impl;
2
3 import cn.hutool.core.date.DateUtil;
4 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
5 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6 import com.github.pagehelper.PageHelper;
7 import com.github.pagehelper.PageInfo;
8 import com.pashanhoo.archive.entity.DgArchivesDO;
9 import com.pashanhoo.archive.entity.vo.DgArchivesSearchRequest;
10 import com.pashanhoo.archive.service.DgArchivesService;
11 import com.pashanhoo.common.Result;
12 import com.pashanhoo.common.util.SysCode.SysCodeUtil;
13 import com.pashanhoo.common.util.SysCode.SysCodeVO;
14 import com.pashanhoo.destroy.entity.DgArchivesDestructionConverter;
15 import com.pashanhoo.destroy.entity.DgArchivesDestructionDO;
16 import com.pashanhoo.destroy.entity.vo.*;
17 import com.pashanhoo.destroy.mapper.DgArchivesDestructionMapper;
18 import com.pashanhoo.destroy.service.DgArchivesDestructionService;
19 import com.pashanhoo.destroycatalog.entity.DgDestructionCatalogConverter;
20 import com.pashanhoo.destroycatalog.service.DgDestructionCatalogService;
21 import com.pashanhoo.lend.mapper.DgLendMapper;
22 import org.springframework.beans.factory.annotation.Autowired;
23 import org.springframework.stereotype.Service;
24 import org.springframework.transaction.annotation.Transactional;
25
26 import java.util.List;
27
28 /**
29 * <p>
30 * 档案销毁 服务实现类
31 * </p>
32 *
33 * @author
34 * @since 2021-11-05
35 */
36 @Service
37 public class DgArchivesDestructionServiceImpl extends ServiceImpl<DgArchivesDestructionMapper, DgArchivesDestructionDO> implements DgArchivesDestructionService {
38
39 @Autowired
40 private DgArchivesDestructionConverter dgarchivesdestructionConverter;
41
42 @Autowired
43 private DgArchivesDestructionMapper dgarchivesdestructionMapper;
44
45 @Autowired
46 private DgDestructionCatalogService catalogService;
47 @Autowired
48 private DgDestructionCatalogConverter catalogConverter;
49 @Autowired
50 private DgArchivesService archivesService;
51 @Autowired
52 SysCodeUtil sysCodeUtil;
53 @Autowired
54 private DgLendMapper dglendMapper;
55
56
57 /**
58 * 新增记录
59 * @param request
60 * @return
61 */
62 @Override
63 public Result insertDgArchivesDestruction(AddDgArchivesDestructionRequest request) {
64 DgArchivesDestructionDO dgarchivesdestructionDO = dgarchivesdestructionConverter.addRequest2DO(request);
65 String id= IdWorker.get32UUID();
66 dgarchivesdestructionDO.setBsmDestruction(id);
67 this.save(dgarchivesdestructionDO);
68 return Result.ok(id);
69 }
70
71 @Override
72 public Result showArchivesForDestruction(DgArchivesSearchRequest request) {
73 request.setDazt(4);
74 return Result.ok(archivesService.searchDgArchivesList(request));
75 }
76
77 /**
78 * 根据主键查询记录详情
79 * @param id
80 * @return
81 */
82 @Override
83 public DgArchivesDestructionDetailVO getDgArchivesDestructionDetailById(String id) {
84 DgArchivesDestructionDO dgarchivesdestructionDO = this.getById(id);
85 return dgarchivesdestructionConverter.do2DetailVO(dgarchivesdestructionDO);
86 }
87
88 /**
89 * 修改单条记录
90 * @param request
91 * @return
92 */
93 @Override
94 public boolean updateDgArchivesDestruction(UpdateDgArchivesDestructionRequest request) {
95 DgArchivesDestructionDO dgarchivesdestructionDO = dgarchivesdestructionConverter.updateRequest2DO(request);
96 return this.updateById(dgarchivesdestructionDO);
97 }
98
99 /**
100 * 根据条件进行列表查询
101 * @param request
102 * @return
103 */
104 @Override
105 public Result searchDgArchivesDestructionList(DgArchivesDestructionSearchRequest request) {
106 PageHelper.startPage(request.getCurrentPage(), request.getPageSize());
107 List<DgArchivesDestructionListVO> jyListVOList = dgarchivesdestructionMapper.selectXhResult(request);
108 PageInfo<DgArchivesDestructionListVO> pageInfo = new PageInfo<DgArchivesDestructionListVO>(jyListVOList);
109 return Result.ok(pageInfo);
110
111 }
112
113 @Override
114 @Transactional(rollbackFor = Exception.class)
115 public Result deleteDgArchivesDestruction(String bsm_destruction) {
116 //删除销毁记录表数据
117 dgarchivesdestructionMapper.deleteById(bsm_destruction);
118 //删除档案销毁目录数据
119 catalogService.deleteDestructionCatalog(bsm_destruction);
120 //修改档案信息表状态
121 dgarchivesdestructionMapper.updateArchivesStatus(bsm_destruction,"4");
122 return Result.ok();
123 }
124
125 @Override
126 public Result queryArchivesInfo(String bsm_destruction) {
127 return Result.ok(dgarchivesdestructionMapper.queryArchivesInfo(bsm_destruction));
128 }
129
130 @Override
131 public Result deleteDestructionArchivescataLog(String bsmArchives) {
132 catalogService.deleteDestructionCatalog(bsmArchives);
133 return Result.ok();
134 }
135
136 @Override
137 @Transactional(rollbackFor = Exception.class)
138 public Result addDestructionArchivesInfo(List<String> idList) {
139 //获取补录编号
140 SysCodeVO sysCodeVO = new SysCodeVO();
141 sysCodeVO.setTaskno("XH" + DateUtil.year(DateUtil.date()));
142 sysCodeVO.setCtype("sequence");
143 sysCodeVO.setTaskname("补录序列号");
144 sysCodeVO.setTaskchild(5);
145 String xhbh = sysCodeUtil.getSequence(sysCodeVO);
146 //1.新增销毁案卷信息表数据
147 String archivesUuid=IdWorker.get32UUID();
148 DgArchivesDestructionDO destructionDO=new DgArchivesDestructionDO();
149 destructionDO.setBsmDestruction(archivesUuid);
150 destructionDO.setXhqcbh(xhbh);
151 destructionDO.setFqr("admin");
152 destructionDO.setShyj("同意");
153 destructionDO.setState("1");
154 dgarchivesdestructionMapper.insert(destructionDO);
155 //2.新增销毁目录信息表
156 catalogService.saveBatchDestructionCatalog(idList,archivesUuid);
157 //3.档案信息修改状态为修改中
158 dglendMapper.updateArchivesStatusBatch(idList,"5");
159 return Result.ok();
160 }
161
162 @Override
163 public Result updateArchivesStateByDestruction(String bsm_destruction) {
164 //1.修改档案信息表状态
165 dgarchivesdestructionMapper.updateArchivesStatus(bsm_destruction,"6");
166 //2.修改档案销毁信息表中的状态
167 dgarchivesdestructionMapper.updateDestructionArchivesStatus(bsm_destruction,"2");
168 return Result.ok();
169 }
170
171 @Override
172 public Result updateStateByArchives(List<String> idList) {
173 //1.修改档案基本信息表中的状态
174 dgarchivesdestructionMapper.updateArchivesStatusBatch(idList,"6");
175 return Result.ok();
176 }
177
178
179
180 /**
181 * 根据销毁清册编号获取左侧档案号菜单
182 *
183 * @param xhqcbh 销毁清册编号
184 * @return
185 */
186 @Override
187 public List getDestroyLeftMenu(String xhqcbh) {
188
189 List<DgArchivesDO> dgArchivesDestructionDOS = dgarchivesdestructionMapper.getDestroyLeftMenu(xhqcbh);
190 return dgArchivesDestructionDOS;
191 }
192 }
1 package com.pashanhoo.destroycatalog.controller;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.destroycatalog.entity.vo.AddDgDestructionCatalogRequest;
5 import com.pashanhoo.destroycatalog.entity.vo.UpdateDgDestructionCatalogRequest;
6 import com.pashanhoo.destroycatalog.entity.vo.DgDestructionCatalogSearchRequest;
7 import com.pashanhoo.destroycatalog.service.DgDestructionCatalogService;
8 import org.springframework.web.bind.annotation.RestController;
9 import org.springframework.web.bind.annotation.*;
10 import io.swagger.annotations.Api;
11 import io.swagger.annotations.ApiOperation;
12 import io.swagger.annotations.ApiParam;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import java.util.List;
15
16 /**
17 * <p>
18 * 档案销毁目录 前端控制器
19 * </p>
20 *
21 * @author
22 * @since 2021-11-05
23 */
24 @RestController
25 @RequestMapping("/system/dgDestructionCatalog/")
26 public class DgDestructionCatalogController {
27 @Autowired
28 private DgDestructionCatalogService dgdestructioncatalogService;
29
30 @PostMapping("saveBatchDestructionCatalog")
31 @ApiOperation("新增档案销毁目录")
32 public Result saveBatchDestructionCatalog(@ApiParam("档案销毁目录ID列表") @RequestParam(value = "idList") List<String> idList,@ApiParam("档案销毁信息ID") String bsm_destruction){
33 boolean flag=dgdestructioncatalogService.saveBatchDestructionCatalog(idList,bsm_destruction);
34 if(flag){
35 return Result.ok("批量新增目录成功");
36 }else{
37 return Result.error("批量新增目录失败");
38 }
39 }
40
41 @DeleteMapping("deleteDgDestructionCatalogByIds")
42 @ApiOperation(value = "批量删除档案销毁目录")
43 public Result deleteDgDestructionCatalogByIds(@ApiParam("档案销毁目录ID列表") @RequestParam(value = "idList") List<String> idList) {
44 if(dgdestructioncatalogService.removeByIds(idList)) {
45 return Result.ok("删除成功");
46 }
47 return Result.error("删除失败");
48 }
49
50 @PutMapping("updateDgDestructionCatalog")
51 @ApiOperation("修改档案销毁目录")
52 public Result updateDgDestructionCatalog(@RequestBody UpdateDgDestructionCatalogRequest request){
53 if(dgdestructioncatalogService.updateDgDestructionCatalog(request)) {
54 return Result.ok("修改成功");
55 }
56 return Result.error("修改失败");
57 }
58
59 @GetMapping("getDgDestructionCatalogDetailById")
60 @ApiOperation(value = "读取明细")
61 public Result getDgDestructionCatalogDetailById(@ApiParam("档案销毁目录ID") @RequestParam String id){
62 return Result.ok(dgdestructioncatalogService.getDgDestructionCatalogDetailById(id));
63 }
64
65 @PostMapping("search")
66 @ApiOperation(value = "根据条件进行列表查询")
67 public Result searchDgDestructionCatalogList(@RequestBody DgDestructionCatalogSearchRequest request) {
68 //TODO 默认排序条件设置
69 request.defaultFillPageProp("","");
70 return Result.ok(dgdestructioncatalogService.searchDgDestructionCatalogList(request));
71 }
72 }
1 package com.pashanhoo.destroycatalog.entity;
2
3 import java.util.List;
4 import com.pashanhoo.destroycatalog.entity.vo.AddDgDestructionCatalogRequest;
5 import com.pashanhoo.destroycatalog.entity.vo.DgDestructionCatalogDetailVO;
6 import com.pashanhoo.destroycatalog.entity.vo.DgDestructionCatalogListVO;
7 import com.pashanhoo.destroycatalog.entity.vo.UpdateDgDestructionCatalogRequest;
8 import org.mapstruct.Mapper;
9
10 /**
11 * @author
12 * @since 2021-11-05
13 */
14 @Mapper(componentModel = "spring")
15 public interface DgDestructionCatalogConverter{
16 DgDestructionCatalogDO addRequest2DO(AddDgDestructionCatalogRequest request);
17
18 DgDestructionCatalogDetailVO do2DetailVO(DgDestructionCatalogDO dgdestructioncatalogDO);
19
20 DgDestructionCatalogDO updateRequest2DO(UpdateDgDestructionCatalogRequest request);
21
22 DgDestructionCatalogListVO do2ListVO(DgDestructionCatalogDO dgdestructioncatalogDO);
23
24 List<DgDestructionCatalogListVO> doList2ListVOList(List<DgDestructionCatalogDO> dgdestructioncatalogDOList);
25
26 List<DgDestructionCatalogDO> addRequestList2DO(List<AddDgDestructionCatalogRequest> request);
27 }
1 package com.pashanhoo.destroycatalog.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import java.io.Serializable;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 /**
12 * <p>
13 * 档案销毁目录
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @TableName("DG_DESTRUCTION_CATALOG")
22 public class DgDestructionCatalogDO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 销毁目录标识码
28 */
29 @TableId(value = "BSM_DESTRUCTIONCATALOG", type = IdType.UUID)
30 private String bsmDestructioncatalog;
31
32 /**
33 * 档案标识码
34 */
35 @TableField("BSM_ARCHIVES")
36 private String bsmArchives;
37
38 /**
39 * 销毁标识码
40 */
41 @TableField("BSM_DESTRUCTION")
42 private String bsmDestruction;
43
44
45 }
1 package com.pashanhoo.destroycatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案销毁目录新增请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案销毁目录新增请求实体")
20 public class AddDgDestructionCatalogRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24
25 /**
26 * 档案标识码
27 */
28 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
29 private String bsmArchives;
30
31 /**
32 * 销毁标识码
33 */
34 @ApiModelProperty(name = "bsmDestruction", value = "销毁标识码")
35 private String bsmDestruction;
36
37
38 }
1 package com.pashanhoo.destroycatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案销毁目录明细实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案销毁目录明细实体")
20 public class DgDestructionCatalogDetailVO implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 销毁目录标识码
26 */
27 @ApiModelProperty(name = "bsmLendcatalog", value = "销毁目录标识码")
28 private String bsmLendcatalog;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 销毁标识码
38 */
39 @ApiModelProperty(name = "bsmDestruction", value = "销毁标识码")
40 private String bsmDestruction;
41
42
43 }
1 package com.pashanhoo.destroycatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案销毁目录列表VO
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案销毁目录列表VO")
20 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
21 public class DgDestructionCatalogListVO implements Serializable {
22
23 private static final long serialVersionUID = 1L;
24
25 /**
26 * 销毁目录标识码
27 */
28 @ApiModelProperty(name = "bsmLendcatalog", value = "销毁目录标识码")
29 private String bsmLendcatalog;
30
31 /**
32 * 档案标识码
33 */
34 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
35 private String bsmArchives;
36
37 /**
38 * 销毁标识码
39 */
40 @ApiModelProperty(name = "bsmDestruction", value = "销毁标识码")
41 private String bsmDestruction;
42
43
44 }
1 package com.pashanhoo.destroycatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8 import com.pashanhoo.common.PageInfo;
9
10 /**
11 * <p>
12 * 档案销毁目录列表查询请求实体
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 @Data
19 @EqualsAndHashCode(callSuper = false)
20 @ApiModel(value="档案销毁目录列表查询请求实体")
21 //TODO 初始查询条件是全部,需要根据情况自行删减
22 public class DgDestructionCatalogSearchRequest extends PageInfo implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 销毁目录标识码
28 */
29 @ApiModelProperty(name = "bsmLendcatalog", value = "销毁目录标识码")
30 private String bsmLendcatalog;
31
32 /**
33 * 档案标识码
34 */
35 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
36 private String bsmArchives;
37
38 /**
39 * 销毁标识码
40 */
41 @ApiModelProperty(name = "bsmDestruction", value = "销毁标识码")
42 private String bsmDestruction;
43
44
45 }
1 package com.pashanhoo.destroycatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案销毁目录修改请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案销毁目录修改请求实体")
20 public class UpdateDgDestructionCatalogRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 销毁目录标识码
26 */
27 @ApiModelProperty(name = "bsmLendcatalog", value = "销毁目录标识码")
28 private String bsmLendcatalog;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 销毁标识码
38 */
39 @ApiModelProperty(name = "bsmDestruction", value = "销毁标识码")
40 private String bsmDestruction;
41
42
43 }
1 package com.pashanhoo.destroycatalog.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.archive.entity.DgArchivesDO;
5 import com.pashanhoo.destroycatalog.entity.DgDestructionCatalogDO;
6 import org.apache.ibatis.annotations.Param;
7
8 import java.util.List;
9
10 /**
11 * <p>
12 * 档案销毁目录 Mapper 接口
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 public interface DgDestructionCatalogMapper extends BaseMapper<DgDestructionCatalogDO> {
19
20 List<DgArchivesDO> getDestructionCatalog(@Param("bsmDestruction") String bsmDestruction);
21
22
23 }
1 package com.pashanhoo.destroycatalog.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.destroycatalog.entity.DgDestructionCatalogDO;
6 import com.pashanhoo.destroycatalog.entity.vo.AddDgDestructionCatalogRequest;
7 import com.pashanhoo.destroycatalog.entity.vo.DgDestructionCatalogDetailVO;
8 import com.pashanhoo.destroycatalog.entity.vo.UpdateDgDestructionCatalogRequest;
9 import com.pashanhoo.destroycatalog.entity.vo.DgDestructionCatalogSearchRequest;
10 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
11 import io.swagger.annotations.ApiParam;
12
13 import java.util.List;
14
15 /**
16 * <p>
17 * 档案销毁目录 服务类
18 * </p>
19 *
20 * @author
21 * @since 2021-11-05
22 */
23 public interface DgDestructionCatalogService extends IService<DgDestructionCatalogDO> {
24 /**
25 * 批量销毁目录新增记录
26 * @param idList,bsm_destruction
27 * @return
28 */
29 boolean saveBatchDestructionCatalog(List<String> idList,String bsm_destruction);
30
31 /**
32 * 根据主键查询记录详情
33 * @param id
34 * @return
35 */
36 DgDestructionCatalogDetailVO getDgDestructionCatalogDetailById(String id);
37
38 /**
39 * 修改单条记录
40 * @param request
41 * @return
42 */
43 boolean updateDgDestructionCatalog(UpdateDgDestructionCatalogRequest request);
44
45 /**
46 * 根据条件进行列表查询
47 * @param request
48 * @return
49 */
50 Page searchDgDestructionCatalogList(DgDestructionCatalogSearchRequest request);
51 /**
52 * 通过销毁标识码删除档案销毁目录数据
53 */
54 Result deleteDestructionCatalog(String bsmArchives);
55 /**
56 * 通过档案标识码删除档案销毁目录数据
57 */
58 Result deleteCatalogByarchiveId(String bsm_archives);
59
60 /**
61 * 通过档案标识码查询档案销毁目录数据
62 */
63 Result getDestructionCatalog(String bsm_archives);
64
65 }
1 package com.pashanhoo.destroycatalog.service.impl;
2
3 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
4 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5 import com.pashanhoo.common.Result;
6 import com.pashanhoo.destroycatalog.entity.DgDestructionCatalogConverter;
7 import com.pashanhoo.destroycatalog.entity.DgDestructionCatalogDO;
8 import com.pashanhoo.destroycatalog.entity.vo.AddDgDestructionCatalogRequest;
9 import com.pashanhoo.destroycatalog.entity.vo.DgDestructionCatalogDetailVO;
10 import com.pashanhoo.destroycatalog.entity.vo.UpdateDgDestructionCatalogRequest;
11 import com.pashanhoo.destroycatalog.entity.vo.DgDestructionCatalogSearchRequest;
12 import com.pashanhoo.destroycatalog.mapper.DgDestructionCatalogMapper;
13 import com.pashanhoo.destroycatalog.service.DgDestructionCatalogService;
14 import org.springframework.beans.factory.annotation.Autowired;
15 import org.springframework.stereotype.Service;
16
17 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
18 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
19
20 import java.util.ArrayList;
21 import java.util.List;
22
23 /**
24 * <p>
25 * 档案销毁目录 服务实现类
26 * </p>
27 *
28 * @author
29 * @since 2021-11-05
30 */
31 @Service
32 public class DgDestructionCatalogServiceImpl extends ServiceImpl<DgDestructionCatalogMapper, DgDestructionCatalogDO> implements DgDestructionCatalogService {
33
34 @Autowired
35 private DgDestructionCatalogConverter dgdestructioncatalogConverter;
36
37 @Autowired
38 private DgDestructionCatalogMapper dgdestructioncatalogMapper;
39
40 /**
41 * 新增记录
42 * @param idList,bsm_destruction
43 * @return
44 */
45 @Override
46 public boolean saveBatchDestructionCatalog(List<String> idList, String bsm_destruction) {
47 List<DgDestructionCatalogDO> list=new ArrayList<DgDestructionCatalogDO>();
48 DgDestructionCatalogDO catalogDO=null;
49 for (int i = 0; i < idList.size(); i++) {
50 catalogDO=new DgDestructionCatalogDO();
51 catalogDO.setBsmDestructioncatalog(IdWorker.get32UUID());
52 catalogDO.setBsmDestruction(bsm_destruction);
53 catalogDO.setBsmArchives(idList.get(i));
54 list.add(catalogDO);
55 }
56
57 return this.saveBatch(list);
58 }
59
60 /**
61 * 根据主键查询记录详情
62 * @param id
63 * @return
64 */
65 @Override
66 public DgDestructionCatalogDetailVO getDgDestructionCatalogDetailById(String id) {
67 DgDestructionCatalogDO dgdestructioncatalogDO = this.getById(id);
68 return dgdestructioncatalogConverter.do2DetailVO(dgdestructioncatalogDO);
69 }
70
71 /**
72 * 修改单条记录
73 * @param request
74 * @return
75 */
76 @Override
77 public boolean updateDgDestructionCatalog(UpdateDgDestructionCatalogRequest request) {
78 DgDestructionCatalogDO dgdestructioncatalogDO = dgdestructioncatalogConverter.updateRequest2DO(request);
79 return this.updateById(dgdestructioncatalogDO);
80 }
81
82 /**
83 * 根据条件进行列表查询
84 * @param request
85 * @return
86 */
87 @Override
88 public Page searchDgDestructionCatalogList(DgDestructionCatalogSearchRequest request) {
89 Page<DgDestructionCatalogDO> pageParam = new Page<DgDestructionCatalogDO>(request.getCurrentPage(), request.getPageSize());
90 QueryWrapper<DgDestructionCatalogDO> wrapper = new QueryWrapper<>();
91 //设置默认排序
92 wrapper = "desc".equals(request.getSortOrder()) ? wrapper.orderByDesc(request.getSortField()) : wrapper.orderByAsc(request.getSortField());
93
94 //TODO 根据当前情况设置wrapper条件
95
96 Page page = this.page(pageParam, wrapper);
97 //将查询出来的DO List转为 ListVO List并重新设置到page对象中,并返回page对象
98 return page.setRecords(dgdestructioncatalogConverter.doList2ListVOList(page.getRecords()));
99 }
100
101 @Override
102 public Result deleteDestructionCatalog(String bsmArchives) {
103 QueryWrapper<DgDestructionCatalogDO> wrapper = new QueryWrapper<>();
104 wrapper.eq(bsmArchives!=null && !"".equals(bsmArchives),"BSM_ARCHIVES",bsmArchives);
105 int result=dgdestructioncatalogMapper.delete(wrapper);
106 if(result!=0){
107 return Result.ok();
108 }else{
109 return Result.error("操作失败");
110 }
111
112 }
113
114 @Override
115 public Result deleteCatalogByarchiveId(String bsm_archives) {
116 QueryWrapper<DgDestructionCatalogDO> wrapper = new QueryWrapper<>();
117 wrapper.eq(bsm_archives!=null && !"".equals(bsm_archives),"BSM_ARCHIVES",bsm_archives);
118 int result=dgdestructioncatalogMapper.delete(wrapper);
119 if(result!=0){
120 return Result.ok();
121 }else{
122 return Result.error("操作失败");
123 }
124 }
125
126
127
128 @Override
129 public Result getDestructionCatalog(String bsm_archives) {
130 QueryWrapper<DgDestructionCatalogDO> wrapper = new QueryWrapper<>();
131 wrapper.eq(bsm_archives!=null && !"".equals(bsm_archives),"BSM_ARCHIVES",bsm_archives);
132 dgdestructioncatalogMapper.selectOne(wrapper);
133
134 return null;
135 }
136
137 }
1 package com.pashanhoo.dictionary.controller;
2
3 import com.github.pagehelper.PageInfo;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.common.util.TreeUtil;
6 import com.pashanhoo.dictionary.model.dto.SysDict;
7 import com.pashanhoo.dictionary.model.vo.EditDictVo;
8 import com.pashanhoo.dictionary.model.vo.GetSysDictParentVo;
9 import com.pashanhoo.dictionary.model.vo.SysDictVo;
10 import com.pashanhoo.dictionary.service.SysDictService;
11 import io.swagger.annotations.Api;
12 import io.swagger.annotations.ApiOperation;
13 import io.swagger.annotations.ApiParam;
14 import org.springframework.beans.factory.annotation.Autowired;
15 import org.springframework.web.bind.annotation.*;
16
17 import java.util.Comparator;
18 import java.util.HashMap;
19 import java.util.List;
20 import java.util.Map;
21
22 @Api(tags = "字典表")
23 @RestController
24 @RequestMapping("/SysDict")
25 public class SysDictController {
26
27 @Autowired
28 SysDictService sysDictService;
29
30
31 @ApiOperation("根据父级编码查询子集编码和名称")
32 @GetMapping ("getSysDictChildByParentCode")
33 public Result getSysDictChildByParentCode(@ApiParam("父级编码") @RequestParam String dcode) {
34 return sysDictService.getSysDictChildByParentCode(dcode);
35 }
36
37
38 @ApiOperation("获取字典表父级集合")
39 @PostMapping("getSysDictParent")
40 public Result<PageInfo<GetSysDictParentVo>> getSysDictParent(@RequestBody SysDictVo request) {
41 return Result.ok(sysDictService.getSysDictParent(request));
42 }
43
44 @ApiOperation("编辑界面获取指定字典编码子集")
45 @GetMapping("getSysDictByTypeId")
46 public Result<List<SysDict>> getSysDictByTypeId(@ApiParam("类型ID") @RequestParam String typeId) {
47 List<SysDict> dicts = sysDictService.getSysDictByTypeId(typeId);
48 // TreeUtil.setRule((o1, o2) -> 0, SysDict.class,"DictId");
49 TreeUtil.setRule(new Comparator<SysDict>() {
50 @Override
51 public int compare(SysDict o1, SysDict o2) {
52 if (o1.getSort() == null) {
53 o1.setSort((short) 0);
54 }
55 if (o2.getSort() == null) {
56 o2.setSort((short) 0);
57 }
58 return o1.getSort() - o2.getSort();
59 }
60 },SysDict.class,"DictId");
61 List<SysDict> tree = TreeUtil.listToTree(dicts, typeId);
62 return Result.ok(tree);
63 }
64
65 @ApiOperation("编辑")
66 @PostMapping("editSysDictByTypeId")
67 public Result editSysDictByTypeId(@RequestBody EditDictVo request) {
68 int row = sysDictService.editSysDict(request);
69 if (row != 0) {
70 return Result.ok("修改成功");
71 } else {
72 return Result.ok("修改失败");
73 }
74 }
75
76 @ApiOperation("返回json")
77 @GetMapping("getJson")
78 public Result getJson() {
79 List<SysDict> dicts = sysDictService.selectAll();
80 TreeUtil.setRule(new Comparator<SysDict>() {
81 @Override
82 public int compare(SysDict o1, SysDict o2) {
83 if (o1.getSort() == null) {
84 o1.setSort((short) 0);
85 }
86 if (o2.getSort() == null) {
87 o2.setSort((short) 0);
88 }
89 return o1.getSort() - o2.getSort();
90 }
91 }, SysDict.class, "DictId");
92 List<SysDict> tree = TreeUtil.listToTree(dicts, null);
93
94 Map<String, List<SysDict>> map = new HashMap<>();
95 for (SysDict SYSDICT : tree) {
96 map.put(SYSDICT.getDcode(), SYSDICT.getChildren());
97 }
98 return Result.ok(map);
99 }
100 }
1 package com.pashanhoo.dictionary.dao;
2
3 import com.pashanhoo.dictionary.model.dto.SysDict;
4 import com.pashanhoo.dictionary.model.vo.GetSysDictParentVo;
5 import com.pashanhoo.dictionary.model.vo.SysDictVo;
6 import org.apache.ibatis.annotations.Mapper;
7 import org.apache.ibatis.annotations.Param;
8
9 import java.util.List;
10
11 @Mapper
12 public interface SysDictMapper {
13 /**
14 * delete by primary key
15 *
16 * @param dictid primaryKey
17 * @return deleteCount
18 */
19 int deleteByPrimaryKey(String dictid);
20
21 /**
22 * insert record to table
23 *
24 * @param record the record
25 * @return insert count
26 */
27 int insert(SysDict record);
28
29 /**
30 * insert record to table selective
31 *
32 * @param record the record
33 * @return insert count
34 */
35 int insertSelective(SysDict record);
36
37 /**
38 * select by primary key
39 *
40 * @param dictid primary key
41 * @return object by primary key
42 */
43 SysDict selectByPrimaryKey(String dictid);
44
45 /**
46 * update record selective
47 *
48 * @param record the updated record
49 * @return update count
50 */
51 int updateByPrimaryKeySelective(SysDict record);
52
53 /**
54 * update record
55 *
56 * @param record the updated record
57 * @return update count
58 */
59 int updateByPrimaryKey(SysDict record);
60
61 int updateBatch(List<SysDict> list);
62
63 int updateBatchSelective(List<SysDict> list);
64
65 int batchInsert(@Param("list") List<SysDict> list);
66
67 List<GetSysDictParentVo> getSysDictParent(@Param("request") SysDictVo request);
68
69 List<SysDict> getSysDictByTypeId(@Param("typeId") String typeId);
70
71 int deleteListByPrimaryKey(@Param("dictWithoutParent") List<SysDict> dictWithoutParent);
72
73 List<SysDict> selectAll();
74
75 int deleteByTypeId(@Param("typeid") String typeid);
76
77 List<SysDict> getSysDictChildByParentCode(@Param("dcode") String dcode);
78 }
1 package com.pashanhoo.dictionary.model.dto;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6
7 import java.io.Serializable;
8 import java.util.List;
9
10 /**
11 * 字典表
12 */
13 @ApiModel(value = "extraction-model-SysDict")
14 @Data
15 public class SysDict implements Serializable {
16 /**
17 * 字典主键
18 */
19 @ApiModelProperty(value = "字典主键")
20 private String dictId;
21
22 /**
23 * 父级ID
24 */
25 @ApiModelProperty(value = "父级ID")
26 private String parentId;
27
28 /**
29 * 字典编码
30 */
31 @ApiModelProperty(value = "字典编码")
32 private String dcode;
33
34 /**
35 * 字典名称
36 */
37 @ApiModelProperty(value = "字典名称")
38 private String dname;
39
40 /**
41 * 排序号
42 */
43 @ApiModelProperty(value = "排序号")
44 private Short sort;
45
46 /**
47 * 是否树形
48 */
49 @ApiModelProperty(value = "是否树形")
50 private String isTree;
51
52 /**
53 * 类型ID
54 */
55 @ApiModelProperty(value = "类型ID")
56 private String typeId;
57
58 /**
59 * 状态(0:禁用 1:启用)默认1
60 */
61 @ApiModelProperty(value = "状态(0:禁用 1:启用)默认1")
62 private String state;
63
64 private List<SysDict> children;
65
66 private static final long serialVersionUID = 1L;
67 }
1 package com.pashanhoo.dictionary.model.vo;
2
3 import com.pashanhoo.dictionary.model.dto.SysDict;
4 import io.swagger.annotations.ApiModel;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.util.List;
9
10 @Data
11 @ApiModel("字典表编辑请求实体")
12 @EqualsAndHashCode(callSuper = false)
13 public class EditDictVo {
14
15 List<SysDict> editDicts;
16 }
1 package com.pashanhoo.dictionary.model.vo;
2
3 import com.pashanhoo.dictionary.model.dto.SysDict;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 import java.util.List;
10
11 @Data
12 @ApiModel("获取字典表父级集合实体")
13 @EqualsAndHashCode(callSuper = false)
14 public class GetSysDictParentVo {
15
16 /**
17 * 字典主键
18 */
19 @ApiModelProperty(value = "字典主键")
20 private String dictId;
21
22 /**
23 * 父级ID
24 */
25 @ApiModelProperty(value = "父级ID")
26 private String parentId;
27
28 /**
29 * 字典编码
30 */
31 @ApiModelProperty(value = "字典编码")
32 private String dcode;
33
34 /**
35 * 字典名称
36 */
37 @ApiModelProperty(value = "字典名称")
38 private String dname;
39
40 /**
41 * 排序号
42 */
43 @ApiModelProperty(value = "排序号")
44 private Short sort;
45
46 /**
47 * 是否树形
48 */
49 @ApiModelProperty(value = "是否树形")
50 private String isTree;
51
52 /**
53 * 类型ID
54 */
55 @ApiModelProperty(value = "类型ID")
56 private String typeId;
57
58 /**
59 * 序号
60 */
61 @ApiModelProperty(value = "序号")
62 private Integer rowNum;
63
64 /**
65 * 状态(0:禁用 1:启用)默认1
66 */
67 @ApiModelProperty(value = "状态(0:禁用 1:启用)默认1")
68 private String state;
69
70 private List<SysDict> children;
71
72 private static final long serialVersionUID = 1L;
73 }
1 package com.pashanhoo.dictionary.model.vo;
2
3 import com.pashanhoo.common.PageInfo;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 import java.io.Serializable;
10
11 @Data
12 @ApiModel("字典表请求实体")
13 @EqualsAndHashCode(callSuper = false)
14 public class SysDictVo extends PageInfo implements Serializable {
15
16 /**
17 * 字典编码
18 */
19 @ApiModelProperty(value = "字典编码")
20 private String dcode;
21
22 /**
23 * 字典名称
24 */
25 @ApiModelProperty(value = "字典名称")
26 private String dname;
27
28 /**
29 * 类型ID
30 */
31 @ApiModelProperty(value = "类型ID")
32 private String typeId;
33 }
1 package com.pashanhoo.dictionary.service;
2
3 import com.github.pagehelper.PageInfo;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.dictionary.model.dto.SysDict;
6 import com.pashanhoo.dictionary.model.vo.EditDictVo;
7 import com.pashanhoo.dictionary.model.vo.GetSysDictParentVo;
8 import com.pashanhoo.dictionary.model.vo.SysDictVo;
9
10 import java.util.List;
11
12 public interface SysDictService {
13
14 /**
15 * 删除
16 * @param dictid
17 * @return
18 */
19 int deleteByPrimaryKey(String dictid);
20
21 /**
22 * 插入
23 * @param record
24 * @return
25 */
26 int insert(SysDict record);
27
28 /**
29 * 插入
30 * @param record
31 * @return
32 */
33 int insertSelective(SysDict record);
34
35 /**
36 * 查询
37 * @param dictid
38 * @return
39 */
40 SysDict selectByPrimaryKey(String dictid);
41
42 /**
43 * 更新
44 * @param record
45 * @return
46 */
47 int updateByPrimaryKeySelective(SysDict record);
48
49 /**
50 * 更新
51 * @param record
52 * @return
53 */
54 int updateByPrimaryKey(SysDict record);
55
56 /**
57 * 批量更新
58 * @param list
59 * @return
60 */
61 int updateBatch(List<SysDict> list);
62
63 /**
64 * 批量更新
65 * @param list
66 * @return
67 */
68 int updateBatchSelective(List<SysDict> list);
69
70 /**
71 * 批量插入
72 * @param list
73 * @return
74 */
75 int batchInsert(List<SysDict> list);
76
77 /**
78 * 获取父级字典表
79 * @param request
80 * @return
81 */
82 PageInfo<GetSysDictParentVo> getSysDictParent(SysDictVo request);
83
84 /**
85 * 根据typeId查询
86 * @param typeId
87 * @return
88 */
89 List<SysDict> getSysDictByTypeId(String typeId);
90
91 /**
92 * 编辑字典表
93 * @param request
94 * @return
95 */
96 int editSysDict(EditDictVo request);
97
98 /**
99 * 查询全部
100 * @return
101 */
102 List<SysDict> selectAll();
103
104 /**
105 * 根据复机编码查询子集编码和名称
106 * @param dcode
107 * @return
108 */
109 Result getSysDictChildByParentCode(String dcode);
110
111 }
1 package com.pashanhoo.dictionary.service.impl;
2
3 import com.github.pagehelper.PageHelper;
4 import com.github.pagehelper.PageInfo;
5 import com.pashanhoo.common.Result;
6 import com.pashanhoo.dictionary.dao.SysDictMapper;
7 import com.pashanhoo.dictionary.model.dto.SysDict;
8 import com.pashanhoo.dictionary.model.vo.EditDictVo;
9 import com.pashanhoo.dictionary.model.vo.GetSysDictParentVo;
10 import com.pashanhoo.dictionary.model.vo.SysDictVo;
11 import com.pashanhoo.dictionary.service.SysDictService;
12 import org.springframework.stereotype.Service;
13 import org.springframework.transaction.annotation.Transactional;
14
15 import javax.annotation.Resource;
16 import java.util.ArrayList;
17 import java.util.List;
18 import java.util.stream.Collectors;
19
20 @Service
21 public class SysDictServiceImpl implements SysDictService {
22
23 @Resource
24 private SysDictMapper sysDictMapper;
25
26 /**
27 * 查询
28 * @param dictid
29 * @return
30 */
31 @Override
32 public int deleteByPrimaryKey(String dictid) {
33 return sysDictMapper.deleteByPrimaryKey(dictid);
34 }
35
36 /**
37 * 插入
38 * @param record
39 * @return
40 */
41 @Override
42 public int insert(SysDict record) {
43 return sysDictMapper.insert(record);
44 }
45
46 /**
47 * 插入
48 * @param record
49 * @return
50 */
51 @Override
52 public int insertSelective(SysDict record) {
53 return sysDictMapper.insertSelective(record);
54 }
55
56 /**
57 * 查询
58 * @param dictid
59 * @return
60 */
61 @Override
62 public SysDict selectByPrimaryKey(String dictid) {
63 return sysDictMapper.selectByPrimaryKey(dictid);
64 }
65
66 /**
67 * 更新
68 * @param record
69 * @return
70 */
71 @Override
72 public int updateByPrimaryKeySelective(SysDict record) {
73 return sysDictMapper.updateByPrimaryKeySelective(record);
74 }
75
76 /**
77 * 更新
78 * @param record
79 * @return
80 */
81 @Override
82 public int updateByPrimaryKey(SysDict record) {
83 return sysDictMapper.updateByPrimaryKey(record);
84 }
85
86 /**
87 * 批量更新
88 * @param list
89 * @return
90 */
91 @Override
92 public int updateBatch(List<SysDict> list) {
93 return sysDictMapper.updateBatch(list);
94 }
95
96 /**
97 * 批量更新
98 * @param list
99 * @return
100 */
101 @Override
102 public int updateBatchSelective(List<SysDict> list) {
103 return sysDictMapper.updateBatchSelective(list);
104 }
105
106 /**
107 * 批量插入
108 * @param list
109 * @return
110 */
111 @Override
112 public int batchInsert(List<SysDict> list) {
113 return sysDictMapper.batchInsert(list);
114 }
115
116 /**
117 * 获取父级字典表
118 * @param request
119 * @return
120 */
121 @Override
122 public PageInfo<GetSysDictParentVo> getSysDictParent(SysDictVo request) {
123 PageHelper.startPage(request.getCurrentPage(), request.getPageSize());
124 List<GetSysDictParentVo> list = sysDictMapper.getSysDictParent(request);
125 return new PageInfo<>(list);
126 }
127
128 /**
129 * 根据typeId查询字典表
130 * @param typeId
131 * @return
132 */
133 @Override
134 public List<SysDict> getSysDictByTypeId(String typeId) {
135 return sysDictMapper.getSysDictByTypeId(typeId);
136 }
137
138 /**
139 * root节点只做更新,子节点全部删除再批量插入
140 * @param request
141 * @return
142 */
143 @Override
144 @Transactional(rollbackFor = Exception.class)
145 public int editSysDict(EditDictVo request) {
146 List<SysDict> editDicts = request.getEditDicts();
147 List<SysDict> parent = editDicts.stream().filter(item -> item.getParentId() == null).collect(Collectors.toList());
148 sysDictMapper.updateByPrimaryKey(parent.get(0));
149
150 List<SysDict> dictWithoutParent = editDicts.stream().filter(item -> item.getParentId() != null).collect(Collectors.toList());
151 List<SysDict> result = new ArrayList<>();
152 //递归所有子集
153 List<SysDict> resultList = getAllSysDict(dictWithoutParent,result);
154
155 //删除除了根目录的所有子集
156 sysDictMapper.deleteByTypeId(resultList.get(0).getTypeId());
157 return sysDictMapper.batchInsert(resultList);
158 }
159
160 /**
161 * 查询所有字典表
162 * @return
163 */
164 @Override
165 public List<SysDict> selectAll() {
166 return sysDictMapper.selectAll();
167 }
168
169 @Override
170 public Result getSysDictChildByParentCode(String dcode) {
171 List<SysDict> list=sysDictMapper.getSysDictChildByParentCode(dcode);
172 return Result.ok(list);
173 }
174
175
176 private List<SysDict> getAllSysDict(List<SysDict> dicts, List<SysDict> result) {
177
178 for (SysDict SYSDICT : dicts) {
179 List<SysDict> children = SYSDICT.getChildren();
180 result.add(SYSDICT);
181 if (children != null) {
182 getAllSysDict(children, result);
183 }
184 }
185
186 return result;
187 }
188
189 }
1 package com.pashanhoo.file.controller;
2
3 import cn.hutool.core.util.StrUtil;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.file.entity.vo.AddDgFileRequest;
6 import com.pashanhoo.file.entity.vo.DgCatalogWithFileVO;
7 import com.pashanhoo.file.entity.vo.UpdateDgFileRequest;
8 import com.pashanhoo.file.service.DgFileService;
9 import io.swagger.annotations.Api;
10 import io.swagger.annotations.ApiOperation;
11 import io.swagger.annotations.ApiParam;
12 import org.springframework.beans.factory.annotation.Autowired;
13 import org.springframework.web.bind.annotation.*;
14 import org.springframework.web.multipart.MultipartFile;
15
16 import java.util.List;
17
18 /**
19 * <p>
20 * 档案文件信息 前端控制器
21 * </p>
22 *
23 * @author
24 * @since 2021-11-05
25 */
26 @RestController
27 @RequestMapping("/system/dgFile/")
28 @Api(tags = "档案文件信息接口")
29 public class DgFileController {
30 @Autowired
31 private DgFileService dgfileService;
32
33 @PostMapping("insertDgFile")
34 @ApiOperation("新增档案文件信息")
35 public Result insertDgFile(@RequestBody List<AddDgFileRequest> request) {
36 if (dgfileService.insertDgFile(request)) {
37 return Result.ok();
38 }
39 return Result.error("新增失败");
40 }
41
42 @DeleteMapping("deleteDgFileByIds")
43 @ApiOperation(value = "批量删除档案文件信息和附件")
44 public Result deleteDgFileByIds(@ApiParam("档案文件信息ID列表") @RequestBody List<String> bsmFileList) {
45 try {
46 if (dgfileService.deleteFile(bsmFileList)) {
47 return Result.ok("删除成功");
48 }
49 } catch (Exception e) {
50 return Result.exception(e.getMessage());
51 }
52 return Result.error("删除失败");
53 }
54
55 @PutMapping("updateDgFile")
56 @ApiOperation("修改档案文件信息")
57 public Result updateDgFile(@RequestBody UpdateDgFileRequest request) {
58 if (dgfileService.updateDgFile(request)) {
59 return Result.ok("修改成功");
60 }
61 return Result.error("修改失败");
62 }
63
64 @GetMapping("getDgFileDetailById")
65 @ApiOperation(value = "获取附件列表")
66 public Result<List<DgCatalogWithFileVO>> getDgFileDetailById(@ApiParam("档案标识码") @RequestParam String bsmArchive) {
67 return Result.ok(dgfileService.getFileList(bsmArchive));
68 }
69
70 @PutMapping("updateFileSort")
71 @ApiOperation("附件排序")
72 public Result updateFileSort(@RequestBody List<UpdateDgFileRequest> requests) {
73 if (dgfileService.updateFileSort(requests)) {
74 return Result.ok("修改成功");
75 }
76 return Result.error("修改失败");
77 }
78
79 @RequestMapping(value = "/upload", method = RequestMethod.POST)
80 @ApiOperation("上传材料附件")
81 public Result upload(@RequestPart("file") MultipartFile file, AddDgFileRequest fileRequest) {
82 if (StrUtil.isEmpty(fileRequest.getBsmArchive()) || StrUtil.isEmpty(fileRequest.getBsmCatalog())) {
83 return Result.error("请先新增档案基本信息和目录");
84 }
85 try {
86 return Result.ok(dgfileService.upload(file, fileRequest));
87 } catch (Exception e) {
88 return Result.exception(e.getMessage());
89 }
90 }
91 }
1 package com.pashanhoo.file.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.file.entity.vo.AddDgFileRequest;
6 import com.pashanhoo.file.entity.vo.DgFileDetailVO;
7 import com.pashanhoo.file.entity.vo.DgFileListVO;
8 import com.pashanhoo.file.entity.vo.UpdateDgFileRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgFileConverter{
17 DgFileDO addRequest2DO(AddDgFileRequest request);
18
19 DgFileDetailVO do2DetailVO(DgFileDO dgfileDO);
20
21 DgFileDO updateRequest2DO(UpdateDgFileRequest request);
22
23 DgFileListVO do2ListVO(DgFileDO dgfileDO);
24
25 List<DgFileListVO> doList2ListVOList(List<DgFileDO> dgfileDOList);
26
27 List<DgFileDO> voList2ListDO(List<AddDgFileRequest> addDgFileRequestList);
28
29 List<DgFileDO> updateList2DOList(List<UpdateDgFileRequest> requests);
30 }
1 package com.pashanhoo.file.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import java.util.Date;
6 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableField;
8 import java.io.Serializable;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11
12 /**
13 * <p>
14 * 档案文件信息
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @TableName("DG_FILE")
23 public class DgFileDO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 文件标识码
29 */
30 @TableId(value = "BSM_FILE", type = IdType.UUID)
31 private String bsmFile;
32
33 /**
34 * 目录标识码
35 */
36 @TableField("BSM_CATALOG")
37 private String bsmCatalog;
38
39 /**
40 * 文件类型
41 */
42 @TableField("KZM")
43 private String kzm;
44
45 /**
46 * 上传日期
47 */
48 @TableField("SCRQ")
49 private Date scrq;
50
51 /**
52 * 上传人
53 */
54 @TableField("SCR")
55 private String scr;
56
57 /**
58 * 附件路径
59 */
60 @TableField("FJURL")
61 private String fjurl;
62
63 /**
64 * 附件大小
65 */
66 @TableField("FJSIZE")
67 private String fjsize;
68
69 /**
70 * 序号
71 */
72 @TableField("XH")
73 private Integer xh;
74 }
1 package com.pashanhoo.file.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import com.fasterxml.jackson.annotation.JsonFormat;
8 import io.swagger.annotations.ApiModel;
9 import io.swagger.annotations.ApiModelProperty;
10 import lombok.Data;
11 import lombok.EqualsAndHashCode;
12 import org.springframework.format.annotation.DateTimeFormat;
13
14 /**
15 * <p>
16 * 档案文件信息新增请求实体
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 @Data
23 @EqualsAndHashCode(callSuper = false)
24 @ApiModel(value="档案文件信息新增请求实体")
25 public class AddDgFileRequest implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28
29
30 /**
31 * 目录标识码
32 */
33 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
34 private String bsmCatalog;
35
36 /**
37 * 档案标识码
38 */
39 @ApiModelProperty(name = "bsmArchive", value = "档案标识码")
40 private String bsmArchive;
41
42 /**
43 * 文件类型
44 */
45 @ApiModelProperty(name = "kzm", value = "文件类型")
46 private String kzm;
47
48 /**
49 * 上传日期
50 */
51 @ApiModelProperty(name = "scrq", value = "上传日期")
52 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
53 private Date scrq;
54
55 /**
56 * 上传人
57 */
58 @ApiModelProperty(name = "scr", value = "上传人")
59 private String scr;
60
61 /**
62 * 附件路径
63 */
64 @ApiModelProperty(name = "fjurl", value = "附件路径")
65 private String fjurl;
66
67 /**
68 * 附件大小
69 */
70 @ApiModelProperty(name = "fjsize", value = "附件大小")
71 private String fjsize;
72
73 /**
74 * 序号
75 */
76 @ApiModelProperty(name = "xh", value = "序号")
77 private Integer xh;
78 }
1 package com.pashanhoo.file.entity.vo;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.io.Serializable;
9 import java.util.List;
10
11 @Data
12 @EqualsAndHashCode(callSuper = false)
13 @ApiModel(value="档案目录对应文件信息列表VO")
14 public class DgCatalogWithFileVO implements Serializable {
15
16 private static final long serialVersionUID = 1L;
17
18 /**
19 * 档案标识码
20 */
21 @ApiModelProperty(name = "bsmArchive", value = "档案标识码")
22 private String bsmArchive;
23
24 /**
25 * 目录标识码
26 */
27 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
28 private String bsmCatalog;
29
30 /**
31 * 文件名称
32 */
33 @ApiModelProperty(name = "wjmc", value = "档案目录信息")
34 private String wjmc;
35
36 /**
37 * 序号
38 */
39 @ApiModelProperty(name = "catalogXh", value = "目录序号")
40 private Integer catalogXh;
41
42 /**
43 * 档案文件信息列表VO
44 */
45 @ApiModelProperty(name = "fileLists", value = "档案文件信息列表VO")
46 private List<DgFileListVO> fileLists;
47 }
1 package com.pashanhoo.file.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案文件信息明细实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案文件信息明细实体")
22 public class DgFileDetailVO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 文件标识码
28 */
29 @ApiModelProperty(name = "bsmFile", value = "文件标识码")
30 private String bsmFile;
31
32 /**
33 * 目录标识码
34 */
35 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
36 private String bsmCatalog;
37
38 /**
39 * 文件类型
40 */
41 @ApiModelProperty(name = "kzm", value = "文件类型")
42 private String kzm;
43
44 /**
45 * 上传日期
46 */
47 @ApiModelProperty(name = "scrq", value = "上传日期")
48 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
49 private Date scrq;
50
51 /**
52 * 上传人
53 */
54 @ApiModelProperty(name = "scr", value = "上传人")
55 private String scr;
56
57 /**
58 * 附件路径
59 */
60 @ApiModelProperty(name = "fjurl", value = "附件路径")
61 private String fjurl;
62
63 /**
64 * 附件大小
65 */
66 @ApiModelProperty(name = "fjsize", value = "附件大小")
67 private String fjsize;
68
69 /**
70 * 序号
71 */
72 @ApiModelProperty(name = "xh", value = "序号")
73 private Integer xh;
74 }
1 package com.pashanhoo.file.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案文件信息列表VO
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案文件信息列表VO")
24 public class DgFileListVO implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 文件标识码
30 */
31 @ApiModelProperty(name = "bsmFile", value = "文件标识码")
32 private String bsmFile;
33
34 /**
35 * 目录标识码
36 */
37 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
38 private String bsmCatalog;
39
40 /**
41 * 文件类型
42 */
43 @ApiModelProperty(name = "kzm", value = "文件类型")
44 private String kzm;
45
46 /**
47 * 上传日期
48 */
49 @ApiModelProperty(name = "scrq", value = "上传日期")
50 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
51 private Date scrq;
52
53 /**
54 * 上传人
55 */
56 @ApiModelProperty(name = "scr", value = "上传人")
57 private String scr;
58
59 /**
60 * 附件路径
61 */
62 @ApiModelProperty(name = "fjurl", value = "附件路径")
63 private String fjurl;
64
65 /**
66 * 附件大小
67 */
68 @ApiModelProperty(name = "fjsize", value = "附件大小")
69 private String fjsize;
70
71 /**
72 * 序号
73 */
74 @ApiModelProperty(name = "xh", value = "序号")
75 private Integer xh;
76
77 /**
78 * 存储url
79 */
80 @ApiModelProperty(name = "saveUrl", value = "存储url")
81 private String saveUrl;
82 }
1 package com.pashanhoo.file.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import com.pashanhoo.common.PageInfo;
10 import org.springframework.format.annotation.DateTimeFormat;
11
12 /**
13 * <p>
14 * 档案文件信息列表查询请求实体
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @ApiModel(value="档案文件信息列表查询请求实体")
23 public class DgFileSearchRequest extends PageInfo implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 文件标识码
29 */
30 @ApiModelProperty(name = "bsmFile", value = "文件标识码")
31 private String bsmFile;
32
33 /**
34 * 目录标识码
35 */
36 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
37 private String bsmCatalog;
38
39 /**
40 * 文件类型
41 */
42 @ApiModelProperty(name = "kzm", value = "文件类型")
43 private String kzm;
44
45 /**
46 * 上传日期
47 */
48 @ApiModelProperty(name = "scrq", value = "上传日期")
49 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
50 private Date scrq;
51
52 /**
53 * 上传人
54 */
55 @ApiModelProperty(name = "scr", value = "上传人")
56 private String scr;
57
58 /**
59 * 附件路径
60 */
61 @ApiModelProperty(name = "fjurl", value = "附件路径")
62 private String fjurl;
63
64 /**
65 * 附件大小
66 */
67 @ApiModelProperty(name = "fjsize", value = "附件大小")
68 private String fjsize;
69
70 /**
71 * 序号
72 */
73 @ApiModelProperty(name = "xh", value = "序号")
74 private Integer xh;
75
76 /**
77 * 档案标识码
78 */
79 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
80 private String bsmArchives;
81 }
1 package com.pashanhoo.file.entity.vo;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.io.Serializable;
9
10 @Data
11 @EqualsAndHashCode(callSuper = false)
12 @ApiModel(value="文件上传实体")
13 public class FileAttribute implements Serializable {
14
15 private static final long serialVersionUID = 1L;
16
17 /**
18 * 文件名
19 */
20 @ApiModelProperty(name = "fileName", value = "文件名")
21 private String fileName;
22
23 /**
24 * 文件大小
25 */
26 @ApiModelProperty(name = "fileSize", value = "文件大小")
27 private String fileSize;
28
29 /**
30 * 文件存储url
31 */
32 @ApiModelProperty(name = "saveUrl", value = "文件url")
33 private String saveUrl;
34
35 /**
36 * 下载URL
37 */
38 @ApiModelProperty(name = "previewUrl", value = "下载URL")
39 private String previewUrl;
40
41 /**
42 * 扩展名
43 */
44 @ApiModelProperty(name = "expandName", value = "扩展名")
45 private String expandName;
46 }
1 package com.pashanhoo.file.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案文件信息修改请求实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案文件信息修改请求实体")
24 public class UpdateDgFileRequest implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 文件标识码
30 */
31 @ApiModelProperty(name = "bsmFile", value = "文件标识码")
32 private String bsmFile;
33
34 /**
35 * 目录标识码
36 */
37 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
38 private String bsmCatalog;
39
40 /**
41 * 文件类型
42 */
43 @ApiModelProperty(name = "kzm", value = "文件类型")
44 private String kzm;
45
46 /**
47 * 上传日期
48 */
49 @ApiModelProperty(name = "scrq", value = "上传日期")
50 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
51 private Date scrq;
52
53 /**
54 * 上传人
55 */
56 @ApiModelProperty(name = "scr", value = "上传人")
57 private String scr;
58
59 /**
60 * 附件路径
61 */
62 @ApiModelProperty(name = "fjurl", value = "附件路径")
63 private String fjurl;
64
65 /**
66 * 附件大小
67 */
68 @ApiModelProperty(name = "fjsize", value = "附件大小")
69 private String fjsize;
70
71 /**
72 * 序号
73 */
74 @ApiModelProperty(name = "xh", value = "序号")
75 private Integer xh;
76 }
1 package com.pashanhoo.file.entity.vo;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.io.Serializable;
9
10 @Data
11 @EqualsAndHashCode(callSuper = false)
12 @ApiModel(value="附件列表排序修改实体")
13 public class UpdateFileSortRequest implements Serializable {
14
15 private static final long serialVersionUID = 1L;
16
17 /**
18 * 目录标识码
19 */
20 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
21 private String bsmCatalog;
22
23 /**
24 * 档案标识码
25 */
26 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
27 private String bsmArchives;
28
29 /**
30 * 序号
31 */
32 @ApiModelProperty(name = "xh", value = "序号")
33 private Integer xh;
34 }
1 package com.pashanhoo.file.mapper;
2
3
4 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 import com.pashanhoo.file.entity.DgFileDO;
6 import com.pashanhoo.file.entity.vo.DgCatalogWithFileVO;
7 import com.pashanhoo.file.entity.vo.UpdateDgFileRequest;
8 import org.apache.ibatis.annotations.Param;
9
10 import java.util.List;
11
12
13 /**
14 * <p>
15 * 档案文件信息 Mapper 接口
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 public interface DgFileMapper extends BaseMapper<DgFileDO> {
22
23 /**
24 * 获取附件列表
25 *
26 * @param bsmArchive
27 * @return
28 */
29 List<DgCatalogWithFileVO> getFileList(@Param("bsmArchive") String bsmArchive);
30
31 List<DgFileDO> getFilesById(@Param("bsmFiles") List<String> bsmFiles);
32 }
1 package com.pashanhoo.file.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.file.entity.DgFileDO;
5 import com.pashanhoo.file.entity.vo.*;
6 import org.springframework.web.multipart.MultipartFile;
7
8 import java.util.List;
9
10 /**
11 * <p>
12 * 档案文件信息 服务类
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 public interface DgFileService extends IService<DgFileDO> {
19 /**
20 * 新增记录
21 * @param request
22 * @return
23 */
24 boolean insertDgFile(List<AddDgFileRequest> request);
25
26 /**
27 * 根据主键查询记录详情
28 * @param id
29 * @return
30 */
31 DgFileDetailVO getDgFileDetailById(String id);
32
33 /**
34 * 修改单条记录
35 * @param request
36 * @return
37 */
38 boolean updateDgFile(UpdateDgFileRequest request);
39
40 /**
41 * 获取附件列表
42 * @param bsmArchive
43 * @return
44 */
45 List<DgCatalogWithFileVO> getFileList(String bsmArchive);
46
47 /**
48 * 修改文件排序
49 * @param requests
50 * @return
51 */
52 boolean updateFileSort(List<UpdateDgFileRequest> requests);
53
54 /**
55 * 批量删除档案文件信息
56 * @param bsmFileList
57 * @return
58 */
59 boolean deleteFile(List<String> bsmFileList) throws Exception;
60
61 /**
62 * 上传材料附件.材料附件信息入库
63 * @param file
64 * @param fileRequest
65 * @return
66 */
67 List<DgCatalogWithFileVO> upload(MultipartFile file, AddDgFileRequest fileRequest) throws Exception;
68 }
1 package com.pashanhoo.file.service.impl;
2
3 import cn.hutool.core.date.DateTime;
4 import cn.hutool.core.util.StrUtil;
5 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
6 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 import com.pashanhoo.common.util.fileupload.MinioConfig;
8 import com.pashanhoo.common.util.fileupload.MinioUtil;
9 import com.pashanhoo.file.entity.DgFileConverter;
10 import com.pashanhoo.file.entity.DgFileDO;
11 import com.pashanhoo.file.entity.vo.*;
12 import com.pashanhoo.file.mapper.DgFileMapper;
13 import com.pashanhoo.file.service.DgFileService;
14 import org.springframework.beans.factory.annotation.Autowired;
15 import org.springframework.stereotype.Service;
16 import org.springframework.transaction.annotation.Transactional;
17 import org.springframework.web.multipart.MultipartFile;
18
19 import java.util.List;
20 import java.util.stream.Collectors;
21
22 /**
23 * <p>
24 * 档案文件信息 服务实现类
25 * </p>
26 *
27 * @author
28 * @since 2021-11-05
29 */
30 @Service
31 public class DgFileServiceImpl extends ServiceImpl<DgFileMapper, DgFileDO> implements DgFileService {
32
33 @Autowired
34 private DgFileConverter dgfileConverter;
35
36 @Autowired
37 private DgFileMapper dgfileMapper;
38
39 @Autowired
40 MinioUtil minioUtil;
41
42 @Autowired
43 MinioConfig minioConfig;
44
45 /**
46 * 新增记录
47 * @param request
48 * @return
49 */
50 @Override
51 public boolean insertDgFile(List<AddDgFileRequest> request) {
52 List<DgFileDO> dgFileDOS = dgfileConverter.voList2ListDO(request);
53 return this.saveBatch(dgFileDOS);
54 }
55
56 /**
57 * 根据主键查询记录详情
58 * @param id
59 * @return
60 */
61 @Override
62 public DgFileDetailVO getDgFileDetailById(String id) {
63 DgFileDO dgfileDO = this.getById(id);
64 DgFileDetailVO dgFileDetailVO = dgfileConverter.do2DetailVO(dgfileDO);
65 String previewUrl = minioUtil.getPreviewUrl(dgFileDetailVO.getFjurl());
66 dgFileDetailVO.setFjurl(previewUrl);
67 return dgFileDetailVO;
68 }
69
70 /**
71 * 修改单条记录
72 * @param request
73 * @return
74 */
75 @Override
76 public boolean updateDgFile(UpdateDgFileRequest request) {
77 DgFileDO dgfileDO = dgfileConverter.updateRequest2DO(request);
78 return this.updateById(dgfileDO);
79 }
80
81 /**
82 * 获取附件列表
83 * @param bsmArchive
84 * @return
85 */
86 @Override
87 public List<DgCatalogWithFileVO> getFileList(String bsmArchive) {
88 List<DgCatalogWithFileVO> fileList = dgfileMapper.getFileList(bsmArchive);
89 fileList.forEach(item->item.getFileLists().forEach(file->file.setSaveUrl(file.getFjurl())));
90 fileList.forEach(catalogWithFiles->catalogWithFiles.getFileLists().forEach(file->file.setFjurl(minioUtil.getPreviewUrl(file.getFjurl()))));
91 return fileList;
92 }
93
94 /**
95 * 修改文件排序
96 *
97 * @param requests
98 * @return
99 */
100 @Override
101 public boolean updateFileSort(List<UpdateDgFileRequest> requests) {
102 List<DgFileDO> fileList = dgfileConverter.updateList2DOList(requests);
103 return this.updateBatchById(fileList);
104 }
105
106 /**
107 * 批量删除档案文件信息
108 * @param bsmFileList
109 * @return
110 */
111 @Override
112 public boolean deleteFile(List<String> bsmFileList) throws Exception {
113
114 //删除minio文件
115 List<DgFileDO> fileDOList = dgfileMapper.getFilesById(bsmFileList);
116 List<String> urls = fileDOList.stream().map(DgFileDO::getFjurl).collect(Collectors.toList());
117 for (String url : urls) {
118 minioUtil.removeObject(minioConfig.getBucket(), url);
119 }
120
121 //删除数据库记录
122 return this.removeByIds(bsmFileList);
123 }
124
125 /**
126 * 上传材料附件.材料附件信息入库
127 *
128 * @param uploadFile
129 * @param fileRequest
130 * @return
131 */
132 @Override
133 @Transactional(rollbackFor = Exception.class)
134 public List<DgCatalogWithFileVO> upload(MultipartFile uploadFile, AddDgFileRequest fileRequest) throws Exception {
135 //文件上传
136 FileAttribute fileAttribute = minioUtil.upload(uploadFile);
137
138 Integer firstXh = fileRequest.getXh();
139 //如果序号不为空
140 if (!StrUtil.isEmptyIfStr(firstXh)) {
141 String firstBsmCatalog = fileRequest.getBsmCatalog();
142 QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>();
143
144 //重新排序
145 fileWrapper.lambda().eq(DgFileDO::getBsmCatalog, firstBsmCatalog).ge(DgFileDO::getXh, firstXh + 1);
146 List<DgFileDO> list = this.list(fileWrapper);
147 list.forEach(item -> item.setXh(item.getXh() + 1));
148 this.updateBatchById(list);
149 }
150
151 //文件信息入库
152 DgFileDO fileDO = new DgFileDO();
153 fileDO.setBsmCatalog(fileRequest.getBsmCatalog());
154 fileDO.setFjurl(fileAttribute.getSaveUrl());
155 fileDO.setFjsize(fileAttribute.getFileSize());
156 fileDO.setKzm(fileAttribute.getExpandName());
157 fileDO.setScrq(DateTime.now());
158 fileDO.setScr(null);
159 if (StrUtil.isEmptyIfStr(firstXh)) {
160 fileDO.setXh(1);
161 }else {
162 fileDO.setXh(firstXh + 1);
163 }
164 this.save(fileDO);
165
166 List<DgCatalogWithFileVO> fileList = dgfileMapper.getFileList(fileRequest.getBsmArchive());
167 if (fileList.size() > 0) {
168 fileList.forEach(item->item.getFileLists().forEach(file->file.setSaveUrl(file.getFjurl())));
169 fileList.forEach(catalogWithFiles->catalogWithFiles.getFileLists().forEach(file->file.setFjurl(minioUtil.getPreviewUrl(file.getFjurl()))));
170 }
171
172 return fileList;
173 }
174
175
176 }
1 package com.pashanhoo.lend.controller;
2
3
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.lend.entity.vo.AddDgLendRequest;
6 import com.pashanhoo.lend.entity.vo.ArchiveLendSearchRequest;
7 import com.pashanhoo.lend.entity.vo.DgLendSearchRequest;
8 import com.pashanhoo.lend.entity.vo.UpdateDgLendRequest;
9 import com.pashanhoo.lend.service.DgLendService;
10 import com.pashanhoo.lendcatalog.entity.vo.AddDgLendCatalogRequest;
11 import com.pashanhoo.lendfile.entity.vo.AddDgLendFileRequest;
12 import io.swagger.annotations.Api;
13 import io.swagger.annotations.ApiOperation;
14 import io.swagger.annotations.ApiParam;
15 import org.springframework.beans.factory.annotation.Autowired;
16 import org.springframework.web.bind.annotation.*;
17
18 import java.util.List;
19
20 /**
21 * <p>
22 * 档案借阅 前端控制器
23 * </p>
24 *
25 * @author
26 * @since 2021-11-05
27 */
28 @RestController
29 @RequestMapping("/system/dgLend/")
30 @Api(tags = "档案借阅接口")
31 public class DgLendController {
32 @Autowired
33 private DgLendService dglendService;
34
35 @PostMapping("search")
36 @ApiOperation(value = "根据条件进行列表查询")
37 public Result searchDgLendList(@RequestBody DgLendSearchRequest request) {
38 return dglendService.searchDgLendList(request);
39 }
40 @PostMapping("deleteDanganJyInfo")
41 @ApiOperation("通过借阅标识码删除借阅记录信息")
42 public Result deleteDanganJyInfo(@ApiParam("档案借阅记录ID") @RequestParam String lendBsm){
43 return dglendService.deleteDanganJyInfo(lendBsm);
44 }
45 @PostMapping("danganGh")
46 @ApiOperation("档案归还")
47 public Result danganGh(@RequestBody UpdateDgLendRequest ghRequest){
48 return dglendService.danganGh(ghRequest);
49 }
50 @PostMapping("showArchivesForLend")
51 @ApiOperation("展示可以选择借阅的列表")
52 public Result showArchivesForLend(@RequestBody ArchiveLendSearchRequest request) {
53 return dglendService.showArchivesForLend(request);
54 }
55 @PostMapping("insertDgLend")
56 @ApiOperation("新增档案借阅")
57 public Result insertDgLend(@RequestBody AddDgLendRequest request){
58 if(dglendService.insertDgLend(request)){
59 return Result.ok();
60 }
61 return Result.error("新增失败");
62 }
63 @PostMapping("addLendArchivesInfo")
64 @ApiOperation(value = "选择要借阅档案List")
65 public Result addLendArchivesInfo(@RequestBody List<AddDgLendCatalogRequest> archivesList) {
66 return dglendService.addDestructionArchivesInfo(archivesList);
67 }
68 @PostMapping("insertDanganJyFile")
69 @ApiOperation("批量借阅文件信息")
70 public Result insertDanganJyFile(@RequestBody List<AddDgLendFileRequest> request){
71 return dglendService.insertDanganJyFile(request);
72 }
73 @PostMapping("queryArchivesInfo")
74 @ApiOperation(value = "档案列表信息展示")
75 public Result queryArchivesInfo(@ApiParam("档案借阅记录ID") @RequestParam(value = "bsm_lend") String bsm_lend) {
76 return dglendService.queryArchivesInfo(bsm_lend);
77 }
78 @GetMapping("deleteArchivesInfo")
79 @ApiOperation(value = "删除档案列表中的档案信息")
80 public Result deleteArchivesInfo(@ApiParam("档案ID") @RequestParam(value = "bsm_lendcatalog") String bsm_lendcatalog) {
81 return dglendService.deleteArchivesInfo(bsm_lendcatalog);
82 }
83 @GetMapping("getDgLendDetailById")
84 @ApiOperation(value = "读取明细")
85 public Result getDgLendDetailById(@ApiParam("档案借阅ID") @RequestParam String id){
86 return Result.ok(dglendService.getDgLendDetailById(id));
87 }
88 @PostMapping("updateDgLend")
89 @ApiOperation("修改档案借阅")
90 public Result updateDgLend(@RequestBody UpdateDgLendRequest request){
91 if(dglendService.updateDgLend(request)) {
92 return Result.ok("修改成功");
93 }
94 return Result.error("修改失败");
95 }
96 @PostMapping("updateStateByArchives")
97 @ApiOperation(value = "新增档案借阅列表中的借阅操作")
98 public Result updateStateByArchives(@ApiParam("档案业务信息ID列表") @RequestParam(value = "idList") List<String> idList) {
99 return dglendService.updateStateByArchives(idList);
100 }
101 @GetMapping("updateArchivesStateByLend")
102 @ApiOperation(value = "编辑中的借阅操作")
103 public Result updateArchivesStateByLend(@ApiParam("档案借阅记录ID") @RequestParam(value = "bsm_lend") String bsm_lend) {
104 return dglendService.updateArchivesStateByLend(bsm_lend);
105 }
106
107
108
109
110
111
112
113
114
115 }
1 package com.pashanhoo.lend.entity;
2
3 import java.util.List;
4 import com.pashanhoo.lend.entity.vo.AddDgLendRequest;
5 import com.pashanhoo.lend.entity.vo.DgLendDetailVO;
6 import com.pashanhoo.lend.entity.vo.DgLendListVO;
7 import com.pashanhoo.lend.entity.vo.UpdateDgLendRequest;
8 import org.mapstruct.Mapper;
9
10 /**
11 * @author
12 * @since 2021-11-05
13 */
14 @Mapper(componentModel = "spring")
15 public interface DgLendConverter{
16 DgLendDO addRequest2DO(AddDgLendRequest request);
17
18 DgLendDetailVO do2DetailVO(DgLendDO dglendDO);
19
20 DgLendDO updateRequest2DO(UpdateDgLendRequest request);
21
22 DgLendListVO do2ListVO(DgLendDO dglendDO);
23
24 List<DgLendListVO> doList2ListVOList(List<DgLendDO> dglendDOList);
25 }
1 package com.pashanhoo.lend.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import java.util.Date;
6 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableField;
8 import java.io.Serializable;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11
12 /**
13 * <p>
14 * 档案借阅
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @TableName("DG_LEND")
23 public class DgLendDO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 借阅标识码
29 */
30 @TableId(value = "BSM_LEND", type = IdType.UUID)
31 private String bsmLend;
32
33 /**
34 * 借阅人
35 */
36 @TableField("JYR")
37 private String jyr;
38
39 /**
40 * 借阅单位
41 */
42 @TableField("JYDW")
43 private String jydw;
44
45 /**
46 * 联系电话
47 */
48 @TableField("LXDW")
49 private String lxdw;
50
51 /**
52 * 通讯地址
53 */
54 @TableField("TXDZ")
55 private String txdz;
56
57 /**
58 * 借阅日期
59 */
60 @TableField("QSSJ")
61 private Date qssj;
62
63 /**
64 * 归还日期
65 */
66 @TableField("GHRQ")
67 private Date ghrq;
68
69 /**
70 * 批准人
71 */
72 @TableField("PZR")
73 private String pzr;
74
75 /**
76 * 借阅截止日期
77 */
78 @TableField("JZRQ")
79 private Date jzrq;
80
81 /**
82 * 借出理由
83 */
84 @TableField("JCLY")
85 private String jcly;
86
87 /**
88 * 利用目的
89 */
90 @TableField("LYMD")
91 private String lymd;
92
93 /**
94 * 备注
95 */
96 @TableField("BZ")
97 private String bz;
98
99 /**
100 * 批准时间
101 */
102 @TableField("PZSJ")
103 private Date pzsj;
104 /**
105 * 归还人
106 */
107 @TableField("GHR")
108 private String ghr;
109 /**
110 * 归还人联系电话
111 */
112 @TableField("GHRDH")
113 private String ghrdh;
114
115 }
1 package com.pashanhoo.lend.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案借阅新增请求实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案借阅新增请求实体")
22 public class AddDgLendRequest implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26
27 /**
28 * 借阅人
29 */
30 @ApiModelProperty(name = "jyr", value = "借阅人")
31 private String jyr;
32
33 /**
34 * 借阅单位
35 */
36 @ApiModelProperty(name = "jydw", value = "借阅单位")
37 private String jydw;
38
39 /**
40 * 联系电话
41 */
42 @ApiModelProperty(name = "lxdw", value = "联系电话")
43 private String lxdw;
44
45 /**
46 * 通讯地址
47 */
48 @ApiModelProperty(name = "txdz", value = "通讯地址")
49 private String txdz;
50
51 /**
52 * 借阅日期
53 */
54 @ApiModelProperty(name = "jyrq", value = "借阅日期")
55 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
56 private Date jyrq;
57
58 /**
59 * 归还日期
60 */
61 @ApiModelProperty(name = "ghrq", value = "归还日期")
62 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
63 private Date ghrq;
64
65 /**
66 * 批准人
67 */
68 @ApiModelProperty(name = "pzr", value = "批准人")
69 private String pzr;
70
71 /**
72 * 借阅期限
73 */
74 @ApiModelProperty(name = "jyqx", value = "借阅期限")
75 private String jyqx;
76
77 /**
78 * 借出理由
79 */
80 @ApiModelProperty(name = "jcly", value = "借出理由")
81 private String jcly;
82
83 /**
84 * 利用目的
85 */
86 @ApiModelProperty(name = "lymd", value = "利用目的")
87 private String lymd;
88
89 /**
90 * 备注
91 */
92 @ApiModelProperty(name = "bz", value = "备注")
93 private String bz;
94
95 /**
96 * 批准时间
97 */
98 @ApiModelProperty(name = "pzsj", value = "批准时间")
99 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
100 private Date pzsj;
101 /**
102 * 归还人
103 */
104 @ApiModelProperty(name = "ghr", value = "归还人")
105 private String ghr;
106 /**
107 * 归还人联系电话
108 */
109 @ApiModelProperty(name = "ghrdh", value = "归还人联系电话")
110 private String ghrdh;
111
112
113 }
1 package com.pashanhoo.lend.entity.vo;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.io.Serializable;
9 @Data
10 @EqualsAndHashCode(callSuper = false)
11 @ApiModel(value="可以借阅的档案列表VO")
12 public class ArchiveLendInfoRequestVO implements Serializable {
13
14 private static final long serialVersionUID = 1L;
15
16 /**
17 * 档案标识码
18 */
19 @ApiModelProperty(name = "bsm_archives", value = "档案标识码")
20 private String bsm_archives;
21 /**
22 * 档案状态
23 */
24 @ApiModelProperty(name = "dazt", value = "档案状态")
25 private String dazt;
26 /**
27 * 案卷号
28 */
29 @ApiModelProperty(name = "ajh", value = "案卷号")
30 private String ajh;
31 /**
32 * 不动产单元号
33 */
34 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
35 private String bdcdyh;
36 /**
37 * 权利类型
38 */
39 @ApiModelProperty(name = "qllx", value = "权利类型")
40 private String qllx;
41 /**
42 * 登记类型
43 */
44 @ApiModelProperty(name = "djlx", value = "登记类型")
45 private String djlx;
46 /**
47 * 权利人
48 */
49 @ApiModelProperty(name = "qlr", value = "权利人")
50 private String qlr;
51 /**
52 * 义务人
53 */
54 @ApiModelProperty(name = "ywr", value = "义务人")
55 private String ywr;
56 /**
57 * 证件号码
58 */
59 @ApiModelProperty(name = "zjhm", value = "证件号码")
60 private String zjhm;
61 /**
62 * 不动产单元数量
63 */
64 @ApiModelProperty(name = "bdcdy_num", value = "不动产单元数量")
65 private String bdcdy_num;
66
67 }
1 package com.pashanhoo.lend.entity.vo;
2
3 import com.pashanhoo.common.PageInfo;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 import java.io.Serializable;
10 @Data
11 @EqualsAndHashCode(callSuper = false)
12 @ApiModel(value="可以借阅的档案列表请求类")
13 public class ArchiveLendSearchRequest extends PageInfo implements Serializable {
14 private static final long serialVersionUID = 1L;
15 /**
16 * 档案号
17 */
18 @ApiModelProperty(name = "ajh", value = "档案号")
19 private String ajh;
20 /**
21 * 业务号
22 */
23 @ApiModelProperty(name = "ywh", value = "业务号")
24 private String ywh;
25 /**
26 * 不动产单元号
27 */
28 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
29 private String bdcdyh;
30 /**
31 * 不动产权证号
32 */
33 @ApiModelProperty(name = "zjhm", value = "不动产权证号")
34 private String zjhm;
35 /**
36 * 权利人
37 */
38 @ApiModelProperty(name = "qlr", value = "权利人")
39 private String qlr;
40 /**
41 * 义务人
42 */
43 @ApiModelProperty(name = "ywr", value = "义务人")
44 private String ywr;
45 /**
46 * 查封文号
47 */
48 @ApiModelProperty(name = "cfwh", value = "查封文号")
49 private String cfwh;
50 /**
51 * 权利类型
52 */
53 @ApiModelProperty(name = "qllx", value = "权利类型")
54 private String qllx;
55
56 }
1 package com.pashanhoo.lend.entity.vo;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.io.Serializable;
9
10 /**
11 * <p>
12 * 档案借阅明细实体
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 @Data
19 @EqualsAndHashCode(callSuper = false)
20 @ApiModel(value="档案借阅明细实体")
21 public class DgLendDetailVO implements Serializable {
22
23 private static final long serialVersionUID = 1L;
24 /**
25 * 借阅标识码
26 */
27 @ApiModelProperty(name = "bsm_lend", value = "借阅标识码")
28 private String bsm_lend;
29 /**
30 * 借阅时效
31 */
32 @ApiModelProperty(name = "jysx", value = "借阅时效")
33 private String jysx;
34 /**
35 * 借阅单号
36 */
37 @ApiModelProperty(name = "jydh", value = "借阅单号")
38 private String jydh;
39 /**
40 * 档案号
41 */
42 @ApiModelProperty(name = "ajh", value = "案卷号")
43 private String ajh;
44 /**
45 * 借阅方式
46 */
47 @ApiModelProperty(name = "jyfs", value = "借阅方式")
48 private String jyfs;
49 /**
50 * 借阅单位
51 */
52 @ApiModelProperty(name = "jydw", value = "借阅单位")
53 private String jydw;
54 /**
55 * 借阅人
56 */
57 @ApiModelProperty(name = "jyr", value = "借阅人")
58 private String jyr;
59 /**
60 * 起始时间
61 */
62 @ApiModelProperty(name = "qssj", value = "起始时间")
63 private String qssj;
64 /**
65 * 截止时间
66 */
67 @ApiModelProperty(name = "jzrq", value = "截止时间")
68 private String jzrq;
69 /**
70 * 归还人
71 */
72 @ApiModelProperty(name = "ghr", value = "归还人")
73 private String ghr;
74 /**
75 * 归还日期
76 */
77 @ApiModelProperty(name = "ghrq", value = "归还日期")
78 private String ghrq;
79 /**
80 * 借阅状态
81 */
82 @ApiModelProperty(name = "jyzt", value = "借阅状态")
83 private String jyzt;
84 /**
85 * 档案数量
86 */
87 @ApiModelProperty(name = "da_num", value = "档案数量")
88 private String da_num;
89
90 }
1 package com.pashanhoo.lend.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案借阅列表VO
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案借阅列表VO")
22 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
23 public class DgLendListVO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 借阅标识码
29 */
30 @ApiModelProperty(name = "bsmLend", value = "借阅标识码")
31 private String bsmLend;
32
33 /**
34 * 借阅人
35 */
36 @ApiModelProperty(name = "jyr", value = "借阅人")
37 private String jyr;
38
39 /**
40 * 借阅单位
41 */
42 @ApiModelProperty(name = "jydw", value = "借阅单位")
43 private String jydw;
44
45 /**
46 * 联系电话
47 */
48 @ApiModelProperty(name = "lxdw", value = "联系电话")
49 private String lxdw;
50
51 /**
52 * 通讯地址
53 */
54 @ApiModelProperty(name = "txdz", value = "通讯地址")
55 private String txdz;
56
57 /**
58 * 借阅日期
59 */
60 @ApiModelProperty(name = "jyrq", value = "借阅日期")
61 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
62 private Date jyrq;
63
64 /**
65 * 归还日期
66 */
67 @ApiModelProperty(name = "ghrq", value = "归还日期")
68 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
69 private Date ghrq;
70
71 /**
72 * 批准人
73 */
74 @ApiModelProperty(name = "pzr", value = "批准人")
75 private String pzr;
76
77 /**
78 * 借阅期限
79 */
80 @ApiModelProperty(name = "jyqx", value = "借阅期限")
81 private String jyqx;
82
83 /**
84 * 借出理由
85 */
86 @ApiModelProperty(name = "jcly", value = "借出理由")
87 private String jcly;
88
89 /**
90 * 利用目的
91 */
92 @ApiModelProperty(name = "lymd", value = "利用目的")
93 private String lymd;
94
95 /**
96 * 备注
97 */
98 @ApiModelProperty(name = "bz", value = "备注")
99 private String bz;
100
101 /**
102 * 批准时间
103 */
104 @ApiModelProperty(name = "pzsj", value = "批准时间")
105 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
106 private Date pzsj;
107
108
109 }
1 package com.pashanhoo.lend.entity.vo;
2
3 import com.pashanhoo.common.PageInfo;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 import java.io.Serializable;
10
11 /**
12 * <p>
13 * 档案借阅列表查询请求实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案借阅列表查询请求实体")
22 public class DgLendSearchRequest extends PageInfo implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 档案号
28 */
29 @ApiModelProperty(name = "ajh", value = "档案号")
30 private String ajh;
31
32 /**
33 * 不动产单元号
34 */
35 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
36 private String bdcdyh;
37
38 /**
39 * 业务号
40 */
41 @ApiModelProperty(name = "ywh", value = "业务号")
42 private String ywh;
43
44 /**
45 * 不动产权证号
46 */
47 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
48 private String bdcqzh;
49
50 /**
51 * 借阅人
52 */
53 @ApiModelProperty(name = "jyr", value = "借阅人")
54 private String jyr;
55
56 /**
57 * 借阅状态
58 */
59 @ApiModelProperty(name = "jyzt", value = "借阅状态")
60 private String jyzt;
61
62
63
64 }
1 package com.pashanhoo.lend.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5 import io.swagger.annotations.ApiModel;
6 import io.swagger.annotations.ApiModelProperty;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import org.springframework.format.annotation.DateTimeFormat;
10
11 /**
12 * <p>
13 * 档案借阅修改请求实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案借阅修改请求实体")
22 public class UpdateDgLendRequest implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 借阅标识码
28 */
29 @ApiModelProperty(name = "bsmLend", value = "借阅标识码")
30 private String bsmLend;
31
32 /**
33 * 借阅人
34 */
35 @ApiModelProperty(name = "jyr", value = "借阅人")
36 private String jyr;
37
38 /**
39 * 借阅单位
40 */
41 @ApiModelProperty(name = "jydw", value = "借阅单位")
42 private String jydw;
43
44 /**
45 * 联系电话
46 */
47 @ApiModelProperty(name = "lxdh", value = "联系电话")
48 private String lxdh;
49
50 /**
51 * 通讯地址
52 */
53 @ApiModelProperty(name = "txdz", value = "通讯地址")
54 private String txdz;
55
56 /**
57 * 借阅日期
58 */
59 @ApiModelProperty(name = "jyrq", value = "借阅日期")
60 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
61 private Date jyrq;
62
63 /**
64 * 归还日期
65 */
66 @ApiModelProperty(name = "ghrq", value = "归还日期")
67 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
68 private Date ghrq;
69
70 /**
71 * 批准人
72 */
73 @ApiModelProperty(name = "pzr", value = "批准人")
74 private String pzr;
75
76 /**
77 * 借阅期限
78 */
79 @ApiModelProperty(name = "jyqx", value = "借阅期限")
80 private String jyqx;
81
82 /**
83 * 借出理由
84 */
85 @ApiModelProperty(name = "jcly", value = "借出理由")
86 private String jcly;
87
88 /**
89 * 利用目的
90 */
91 @ApiModelProperty(name = "lymd", value = "利用目的")
92 private String lymd;
93
94 /**
95 * 备注
96 */
97 @ApiModelProperty(name = "bz", value = "备注")
98 private String bz;
99
100 /**
101 * 批准时间
102 */
103 @ApiModelProperty(name = "pzsj", value = "批准时间")
104 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
105 private Date pzsj;
106 /**
107 * 归还人
108 */
109 @ApiModelProperty(name = "ghr", value = "归还人")
110 private String ghr;
111 /**
112 * 归还人联系电话
113 */
114 @ApiModelProperty(name = "ghrdh", value = "归还人联系电话")
115 private String ghrdh;
116
117
118
119
120
121
122 }
1 package com.pashanhoo.lend.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.archive.entity.vo.DgArchivesListVO;
5 import com.pashanhoo.lend.entity.DgLendDO;
6 import com.pashanhoo.lend.entity.vo.ArchiveLendInfoRequestVO;
7 import com.pashanhoo.lend.entity.vo.ArchiveLendSearchRequest;
8 import com.pashanhoo.lend.entity.vo.DgLendDetailVO;
9 import com.pashanhoo.lend.entity.vo.DgLendSearchRequest;
10 import org.apache.ibatis.annotations.Param;
11
12 import java.util.List;
13
14 /**
15 * <p>
16 * 档案借阅 Mapper 接口
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 public interface DgLendMapper extends BaseMapper<DgLendDO> {
23
24 List<DgLendDetailVO> getDanganJyDetail(DgLendSearchRequest request);
25
26 boolean updateArchivesStatus(@Param("lendBsm") String lendBsm, @Param("dazt") String dazt);
27
28 List<DgArchivesListVO> queryArchivesInfo(@Param("bsm_lend") String bsm_lend);
29
30 boolean updateArchivesStatusBatch(@Param("idList") List<String> idList,@Param("dazt") String dazt);
31
32 List<ArchiveLendInfoRequestVO> getArchiveLendInfo(ArchiveLendSearchRequest request);
33
34
35 }
1 package com.pashanhoo.lend.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.archive.entity.vo.DgArchivesSearchRequest;
5 import com.pashanhoo.common.Result;
6 import com.pashanhoo.lend.entity.DgLendDO;
7 import com.pashanhoo.lend.entity.vo.*;
8 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
9 import com.pashanhoo.lendcatalog.entity.vo.AddDgLendCatalogRequest;
10 import com.pashanhoo.lendfile.entity.vo.AddDgLendFileRequest;
11
12 import java.util.List;
13
14 /**
15 * <p>
16 * 档案借阅 服务类
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 public interface DgLendService extends IService<DgLendDO> {
23 /**
24 * 根据条件进行列表查询
25 * @param request
26 * @return
27 */
28 Result searchDgLendList(DgLendSearchRequest request);
29 /**
30 * 删除借阅记录
31 * @param lendBsm
32 * @return
33 */
34 Result deleteDanganJyInfo(String lendBsm);
35 /**
36 * 档案归还
37 */
38 Result danganGh(UpdateDgLendRequest ghRequest);
39 /**
40 * 展示可以选择借阅的列表
41 * @param request
42 * @return
43 */
44 Result showArchivesForLend(ArchiveLendSearchRequest request);
45 /**
46 * 新增记录
47 * @param request
48 * @return
49 */
50 boolean insertDgLend(AddDgLendRequest request);
51 /**
52 * 根据主键查询记录详情
53 * @param id
54 * @return
55 */
56 DgLendDetailVO getDgLendDetailById(String id);
57 /**
58 * 修改单条记录
59 * @param request
60 * @return
61 */
62 boolean updateDgLend(UpdateDgLendRequest request);
63 /**
64 * 选择要借阅档案List
65 * @param archivesList
66 * @return
67 */
68 Result addDestructionArchivesInfo(List<AddDgLendCatalogRequest> archivesList);
69 /**
70 * 根据条件进行列表查询
71 * @param bsm_lend
72 * @return
73 */
74 Result queryArchivesInfo(String bsm_lend);
75 /**
76 *删除档案列表中的档案信息
77 */
78 Result deleteArchivesInfo(String bsm_lendcatalog);
79 /**
80 * 新增档案借阅列表中的借阅操作
81 * @param idList
82 * @return
83 */
84 Result updateStateByArchives(List<String> idList);
85 /**
86 * 借阅接口
87 * @param bsm_lend
88 * @return
89 */
90 Result updateArchivesStateByLend(String bsm_lend);
91 /**
92 * 批量借阅文件接口
93 * @param request
94 * @return
95 */
96 Result insertDanganJyFile(List<AddDgLendFileRequest> request);
97
98
99
100
101
102 }
1 package com.pashanhoo.lend.service.impl;
2
3 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 import com.github.pagehelper.PageHelper;
5 import com.github.pagehelper.PageInfo;
6 import com.pashanhoo.archive.entity.vo.DgArchivesSearchRequest;
7 import com.pashanhoo.common.Result;
8 import com.pashanhoo.lend.entity.DgLendConverter;
9 import com.pashanhoo.lend.entity.DgLendDO;
10 import com.pashanhoo.lend.entity.vo.*;
11 import com.pashanhoo.lend.mapper.DgLendMapper;
12 import com.pashanhoo.lend.service.DgLendService;
13 import com.pashanhoo.lendcatalog.entity.DgLendCatalogConverter;
14 import com.pashanhoo.lendcatalog.entity.DgLendCatalogDO;
15 import com.pashanhoo.lendcatalog.entity.vo.AddDgLendCatalogRequest;
16 import com.pashanhoo.lendcatalog.entity.vo.UpdateDgLendCatalogRequest;
17 import com.pashanhoo.lendcatalog.service.DgLendCatalogService;
18 import com.pashanhoo.lendfile.entity.DgLendFileConverter;
19 import com.pashanhoo.lendfile.entity.DgLendFileDO;
20 import com.pashanhoo.lendfile.entity.vo.AddDgLendFileRequest;
21 import com.pashanhoo.lendfile.service.DgLendFileService;
22 import org.springframework.beans.factory.annotation.Autowired;
23 import org.springframework.stereotype.Service;
24 import org.springframework.transaction.annotation.Transactional;
25
26 import java.math.BigDecimal;
27 import java.util.ArrayList;
28 import java.util.List;
29
30 /**
31 * <p>
32 * 档案借阅 服务实现类
33 * </p>
34 *
35 * @author
36 * @since 2021-11-05
37 */
38 @Service
39 public class DgLendServiceImpl extends ServiceImpl<DgLendMapper, DgLendDO> implements DgLendService {
40
41 @Autowired
42 private DgLendConverter dglendConverter;
43 @Autowired
44 private DgLendCatalogConverter catalogConverter;
45 @Autowired
46 private DgLendMapper dglendMapper;
47 @Autowired
48 private DgLendCatalogService catalogService;
49 @Autowired
50 private DgLendFileService fileService;
51 @Autowired
52 private DgLendFileConverter fileConverter;
53 /**
54 * 根据条件进行列表查询
55 * @param request
56 * @return
57 */
58 @Override
59 public Result searchDgLendList(DgLendSearchRequest request) {
60 PageHelper.startPage(request.getCurrentPage(), request.getPageSize());
61 List<DgLendDetailVO> jyListVOList = dglendMapper.getDanganJyDetail(request);
62 PageInfo<DgLendDetailVO> pageInfo = new PageInfo<DgLendDetailVO>(jyListVOList);
63 return Result.ok(pageInfo);
64 }
65
66 @Override
67 @Transactional(rollbackFor = Exception.class)
68 public Result deleteDanganJyInfo(String lendBsm) {
69 //查询销毁记录是否存在,存在则删除
70 if(getDgLendDetailById(lendBsm)!=null){
71 dglendMapper.deleteById(lendBsm);
72 }
73 //查询销毁目录记录是否存在,存在则删除
74 List<String> jnmlList=new ArrayList<String>();
75 List<DgLendCatalogDO> catalogDOList= (List<DgLendCatalogDO>) catalogService.getJyMlInfo(lendBsm).getResult();
76 if(catalogDOList!=null){
77 catalogService.deleteJyMlInfo(lendBsm);
78 for (int i = 0; i <catalogDOList.size() ; i++) {
79 jnmlList.add(catalogDOList.get(i).getBsmLendcatalog());
80 }
81 }
82 //查询销毁目录文件记录是否存在,存在则删除
83 List<DgLendCatalogDO> list= (List<DgLendCatalogDO>) catalogService.getJyFileInfoByjybsm(jnmlList).getResult();
84 if(list!=null){
85 catalogService.deleteDanganJyBatch(list);
86 }
87 //修改档案信息表状态
88 dglendMapper.updateArchivesStatus(lendBsm,"4");
89 return Result.ok();
90 }
91
92 @Override
93 @Transactional(rollbackFor = Exception.class)
94 public Result danganGh(UpdateDgLendRequest ghRequest) {
95 //新增借阅记录表归还信息数据
96 DgLendDO lendDO=dglendConverter.updateRequest2DO(ghRequest);
97 dglendMapper.updateById(lendDO);
98 //修改档案信息表状态
99 dglendMapper.updateArchivesStatus(ghRequest.getBsmLend(),"4");
100 return Result.ok();
101 }
102
103 @Override
104 public Result showArchivesForLend(ArchiveLendSearchRequest request) {
105 List<ArchiveLendInfoRequestVO> list=dglendMapper.getArchiveLendInfo(request);
106 return Result.ok(list);
107 }
108
109 /**
110 * 新增记录
111 * @param request
112 * @return
113 */
114 @Override
115 public boolean insertDgLend(AddDgLendRequest request) {
116 DgLendDO dglendDO = dglendConverter.addRequest2DO(request);
117 return this.save(dglendDO);
118 }
119
120 /**
121 * 根据主键查询记录详情
122 * @param id
123 * @return
124 */
125 @Override
126 public DgLendDetailVO getDgLendDetailById(String id) {
127 DgLendDO dglendDO = this.getById(id);
128 return dglendConverter.do2DetailVO(dglendDO);
129 }
130
131 /**
132 * 修改单条记录
133 * @param request
134 * @return
135 */
136 @Override
137 public boolean updateDgLend(UpdateDgLendRequest request) {
138 DgLendDO dglendDO = dglendConverter.updateRequest2DO(request);
139 return this.updateById(dglendDO);
140 }
141
142 @Override
143 public Result addDestructionArchivesInfo(List<AddDgLendCatalogRequest> archivesList) {
144 List<DgLendCatalogDO> lendCatalogDOS=catalogConverter.addCataLogListDO(archivesList);
145 catalogService.saveBatch(lendCatalogDOS);
146 return Result.ok();
147 }
148
149 @Override
150 public Result queryArchivesInfo(String bsm_lend) {
151 return Result.ok(dglendMapper.queryArchivesInfo(bsm_lend));
152 }
153
154 @Override
155 public Result deleteArchivesInfo(String bsm_lendcatalog) {
156 //删除目录信息
157 catalogService.deleteJyMlInfoByDA(bsm_lendcatalog);
158 //删除目录文件信息
159 fileService.deleteJyFile(bsm_lendcatalog);
160 return Result.ok();
161 }
162
163 @Override
164 public Result updateStateByArchives(List<String> idList) {
165 dglendMapper.updateArchivesStatusBatch(idList,"8");
166 return Result.ok();
167 }
168
169 @Override
170 public Result updateArchivesStateByLend(String bsm_destruction) {
171 //修改档案信息表状态
172 dglendMapper.updateArchivesStatus(bsm_destruction,"8");
173 return Result.ok();
174 }
175
176 @Override
177 public Result insertDanganJyFile(List<AddDgLendFileRequest> request) {
178 List<DgLendFileDO> list=fileConverter.addLendFileList(request);
179 fileService.saveBatch(list);
180 //通过目录标识修改目录表记录
181 UpdateDgLendCatalogRequest catalogRequest=new UpdateDgLendCatalogRequest();
182 catalogRequest.setBsmLendcatalog(request.get(0).getBsmLendcatalog());
183 catalogRequest.setJycllx(request.get(0).getJycllx());
184 catalogService.updateDgLendCatalog(catalogRequest);
185 return Result.ok();
186 }
187
188
189 }
1 package com.pashanhoo.lendcatalog.controller;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.lendcatalog.entity.vo.AddDgLendCatalogRequest;
5 import com.pashanhoo.lendcatalog.entity.vo.UpdateDgLendCatalogRequest;
6 import com.pashanhoo.lendcatalog.service.DgLendCatalogService;
7 import io.swagger.annotations.Api;
8 import io.swagger.annotations.ApiOperation;
9 import io.swagger.annotations.ApiParam;
10 import org.springframework.beans.factory.annotation.Autowired;
11 import org.springframework.web.bind.annotation.*;
12
13 import java.util.List;
14
15 /**
16 * <p>
17 * 档案借阅目录 前端控制器
18 * </p>
19 *
20 * @author
21 * @since 2021-11-05
22 */
23 @RestController
24 @RequestMapping("/system/dgLendCatalog/")
25 @Api(tags = "档案借阅目录接口")
26 public class DgLendCatalogController {
27 @Autowired
28 private DgLendCatalogService dglendcatalogService;
29
30 @PostMapping("insertDgLendCatalog")
31 @ApiOperation("新增档案借阅目录")
32 public Result insertDgLendCatalog(@RequestBody AddDgLendCatalogRequest request){
33 if(dglendcatalogService.insertDgLendCatalog(request)){
34 return Result.ok();
35 }
36 return Result.error("新增失败");
37 }
38
39 @DeleteMapping("deleteDgLendCatalogByIds")
40 @ApiOperation(value = "批量删除档案借阅目录")
41 public Result deleteDgLendCatalogByIds(@ApiParam("档案借阅目录ID列表") @RequestParam(value = "idList") List<String> idList) {
42 if(dglendcatalogService.removeByIds(idList)) {
43 return Result.ok("删除成功");
44 }
45 return Result.error("删除失败");
46 }
47
48 @PutMapping("updateDgLendCatalog")
49 @ApiOperation("修改档案借阅目录")
50 public Result updateDgLendCatalog(@RequestBody UpdateDgLendCatalogRequest request){
51 if(dglendcatalogService.updateDgLendCatalog(request)) {
52 return Result.ok("修改成功");
53 }
54 return Result.error("修改失败");
55 }
56
57 @GetMapping("getDgLendCatalogDetailById")
58 @ApiOperation(value = "读取明细")
59 public Result getDgLendCatalogDetailById(@ApiParam("档案借阅目录ID") @RequestParam String id){
60 return Result.ok(dglendcatalogService.getDgLendCatalogDetailById(id));
61 }
62
63
64 }
1 package com.pashanhoo.lendcatalog.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.lendcatalog.entity.vo.AddDgLendCatalogRequest;
6 import com.pashanhoo.lendcatalog.entity.vo.DgLendCatalogDetailVO;
7 import com.pashanhoo.lendcatalog.entity.vo.DgLendCatalogListVO;
8 import com.pashanhoo.lendcatalog.entity.vo.UpdateDgLendCatalogRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgLendCatalogConverter{
17 DgLendCatalogDO addRequest2DO(AddDgLendCatalogRequest request);
18
19 DgLendCatalogDetailVO do2DetailVO(DgLendCatalogDO dglendcatalogDO);
20
21 DgLendCatalogDO updateRequest2DO(UpdateDgLendCatalogRequest request);
22
23 DgLendCatalogListVO do2ListVO(DgLendCatalogDO dglendcatalogDO);
24
25 List<DgLendCatalogListVO> doList2ListVOList(List<DgLendCatalogDO> dglendcatalogDOList);
26
27 List<DgLendCatalogDO> addCataLogListDO(List<AddDgLendCatalogRequest> request);
28
29 }
1 package com.pashanhoo.lendcatalog.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import java.io.Serializable;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 /**
12 * <p>
13 * 档案借阅目录
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @TableName("DG_LEND_CATALOG")
22 public class DgLendCatalogDO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 借阅目录标识码
28 */
29 @TableId(value = "BSM_LENDCATALOG", type = IdType.UUID)
30 private String bsmLendcatalog;
31
32 /**
33 * 档案标识码
34 */
35 @TableField("BSM_ARCHIVES")
36 private String bsmArchives;
37
38 /**
39 * 借阅标识码
40 */
41 @TableField("BSM_LEND")
42 private String bsmLend;
43
44 /**
45 * 借阅材料类型
46 */
47 @TableField("JYCLLX")
48 private String jycllx;
49
50
51 }
1 package com.pashanhoo.lendcatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案借阅目录新增请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案借阅目录新增请求实体")
20 public class AddDgLendCatalogRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24
25 /**
26 * 档案标识码
27 */
28 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
29 private String bsmArchives;
30
31 /**
32 * 借阅标识码
33 */
34 @ApiModelProperty(name = "bsmLend", value = "借阅标识码")
35 private String bsmLend;
36
37 /**
38 * 借阅材料类型
39 */
40 @ApiModelProperty(name = "jycllx", value = "借阅材料类型")
41 private String jycllx;
42
43
44 }
1 package com.pashanhoo.lendcatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案借阅目录明细实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案借阅目录明细实体")
20 public class DgLendCatalogDetailVO implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 借阅目录标识码
26 */
27 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
28 private String bsmLendcatalog;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 借阅标识码
38 */
39 @ApiModelProperty(name = "bsmLend", value = "借阅标识码")
40 private String bsmLend;
41
42 /**
43 * 借阅材料类型
44 */
45 @ApiModelProperty(name = "jycllx", value = "借阅材料类型")
46 private String jycllx;
47
48
49 }
1 package com.pashanhoo.lendcatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案借阅目录列表VO
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案借阅目录列表VO")
20 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
21 public class DgLendCatalogListVO implements Serializable {
22
23 private static final long serialVersionUID = 1L;
24
25 /**
26 * 借阅目录标识码
27 */
28 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
29 private String bsmLendcatalog;
30
31 /**
32 * 档案标识码
33 */
34 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
35 private String bsmArchives;
36
37 /**
38 * 借阅标识码
39 */
40 @ApiModelProperty(name = "bsmLend", value = "借阅标识码")
41 private String bsmLend;
42
43 /**
44 * 借阅材料类型
45 */
46 @ApiModelProperty(name = "jycllx", value = "借阅材料类型")
47 private String jycllx;
48
49
50 }
1 package com.pashanhoo.lendcatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8 import com.pashanhoo.common.PageInfo;
9
10 /**
11 * <p>
12 * 档案借阅目录列表查询请求实体
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 @Data
19 @EqualsAndHashCode(callSuper = false)
20 @ApiModel(value="档案借阅目录列表查询请求实体")
21 //TODO 初始查询条件是全部,需要根据情况自行删减
22 public class DgLendCatalogSearchRequest extends PageInfo implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 借阅目录标识码
28 */
29 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
30 private String bsmLendcatalog;
31
32 /**
33 * 档案标识码
34 */
35 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
36 private String bsmArchives;
37
38 /**
39 * 借阅标识码
40 */
41 @ApiModelProperty(name = "bsmLend", value = "借阅标识码")
42 private String bsmLend;
43
44 /**
45 * 借阅材料类型
46 */
47 @ApiModelProperty(name = "jycllx", value = "借阅材料类型")
48 private String jycllx;
49
50
51 }
1 package com.pashanhoo.lendcatalog.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案借阅目录修改请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-05
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案借阅目录修改请求实体")
20 public class UpdateDgLendCatalogRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 借阅目录标识码
26 */
27 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
28 private String bsmLendcatalog;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 借阅标识码
38 */
39 @ApiModelProperty(name = "bsmLend", value = "借阅标识码")
40 private String bsmLend;
41
42 /**
43 * 借阅材料类型
44 */
45 @ApiModelProperty(name = "jycllx", value = "借阅材料类型")
46 private String jycllx;
47
48
49 }
1 package com.pashanhoo.lendcatalog.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.lendcatalog.entity.DgLendCatalogDO;
5
6 /**
7 * <p>
8 * 档案借阅目录 Mapper 接口
9 * </p>
10 *
11 * @author
12 * @since 2021-11-05
13 */
14 public interface DgLendCatalogMapper extends BaseMapper<DgLendCatalogDO> {
15
16 }
1 package com.pashanhoo.lendcatalog.service;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.lendcatalog.entity.DgLendCatalogDO;
5 import com.pashanhoo.lendcatalog.entity.vo.AddDgLendCatalogRequest;
6 import com.pashanhoo.lendcatalog.entity.vo.DgLendCatalogDetailVO;
7 import com.pashanhoo.lendcatalog.entity.vo.UpdateDgLendCatalogRequest;
8 import com.pashanhoo.lendcatalog.entity.vo.DgLendCatalogSearchRequest;
9 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
10 import com.baomidou.mybatisplus.extension.service.IService;
11
12 import java.util.List;
13
14 /**
15 * <p>
16 * 档案借阅目录 服务类
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 public interface DgLendCatalogService extends IService<DgLendCatalogDO> {
23 /**
24 * 新增记录
25 * @param request
26 * @return
27 */
28 boolean insertDgLendCatalog(AddDgLendCatalogRequest request);
29
30 /**
31 * 根据主键查询记录详情
32 * @param id
33 * @return
34 */
35 DgLendCatalogDetailVO getDgLendCatalogDetailById(String id);
36
37 /**
38 * 修改单条记录
39 * @param request
40 * @return
41 */
42 boolean updateDgLendCatalog(UpdateDgLendCatalogRequest request);
43
44 /**
45 * 查询借阅目录信息
46 * @param lendBsm
47 * @return
48 */
49 Result getJyMlInfo(String lendBsm);
50 /**
51 * 删除借阅目录信息
52 * @param lendBsm
53 * @return
54 */
55 Result deleteJyMlInfo(String lendBsm);
56 /**
57 * 通过借阅目录查询借阅的文件目录
58 * @param jnmlList
59 * @return
60 */
61 Result getJyFileInfoByjybsm(List<String> jnmlList);
62 /**
63 * 批量删除借阅文件记录
64 * @param jywjDOList
65 * @return
66 */
67 Result deleteDanganJyBatch(List<DgLendCatalogDO> jywjDOList);
68 /**
69 * 删除借阅目录信息
70 * @param bsm_lendcatalog
71 * @return
72 */
73 Result deleteJyMlInfoByDA(String bsm_lendcatalog);
74
75
76 }
1 package com.pashanhoo.lendcatalog.service.impl;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.lendcatalog.entity.DgLendCatalogConverter;
5 import com.pashanhoo.lendcatalog.entity.DgLendCatalogDO;
6 import com.pashanhoo.lendcatalog.entity.vo.AddDgLendCatalogRequest;
7 import com.pashanhoo.lendcatalog.entity.vo.DgLendCatalogDetailVO;
8 import com.pashanhoo.lendcatalog.entity.vo.UpdateDgLendCatalogRequest;
9 import com.pashanhoo.lendcatalog.entity.vo.DgLendCatalogSearchRequest;
10 import com.pashanhoo.lendcatalog.mapper.DgLendCatalogMapper;
11 import com.pashanhoo.lendcatalog.service.DgLendCatalogService;
12 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import org.springframework.stereotype.Service;
15
16 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
17 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
18
19 import java.util.ArrayList;
20 import java.util.List;
21
22 /**
23 * <p>
24 * 档案借阅目录 服务实现类
25 * </p>
26 *
27 * @author
28 * @since 2021-11-05
29 */
30 @Service
31 public class DgLendCatalogServiceImpl extends ServiceImpl<DgLendCatalogMapper, DgLendCatalogDO> implements DgLendCatalogService {
32
33 @Autowired
34 private DgLendCatalogConverter dglendcatalogConverter;
35
36 @Autowired
37 private DgLendCatalogMapper dglendcatalogMapper;
38
39 /**
40 * 新增记录
41 * @param request
42 * @return
43 */
44 @Override
45 public boolean insertDgLendCatalog(AddDgLendCatalogRequest request) {
46 DgLendCatalogDO dglendcatalogDO = dglendcatalogConverter.addRequest2DO(request);
47 return this.save(dglendcatalogDO);
48 }
49
50 /**
51 * 根据主键查询记录详情
52 * @param id
53 * @return
54 */
55 @Override
56 public DgLendCatalogDetailVO getDgLendCatalogDetailById(String id) {
57 DgLendCatalogDO dglendcatalogDO = this.getById(id);
58 return dglendcatalogConverter.do2DetailVO(dglendcatalogDO);
59 }
60
61 /**
62 * 修改单条记录
63 * @param request
64 * @return
65 */
66 @Override
67 public boolean updateDgLendCatalog(UpdateDgLendCatalogRequest request) {
68 DgLendCatalogDO dglendcatalogDO = dglendcatalogConverter.updateRequest2DO(request);
69 return this.updateById(dglendcatalogDO);
70 }
71 @Override
72 public Result getJyMlInfo(String lendBsm){
73 QueryWrapper<DgLendCatalogDO> wrapper = new QueryWrapper<>();
74 wrapper.eq(lendBsm!=null && !"".equals(lendBsm),"BSM_LEND",lendBsm);
75 List<DgLendCatalogDO> jymlDOListt=dglendcatalogMapper.selectList(wrapper);
76 return Result.ok(jymlDOListt);
77 }
78 @Override
79 public Result deleteJyMlInfo(String lendBsm){
80 QueryWrapper<DgLendCatalogDO> wrapper = new QueryWrapper<>();
81 wrapper.eq(lendBsm!=null && !"".equals(lendBsm),"BSM_LEND",lendBsm);
82 dglendcatalogMapper.delete(wrapper);
83 return Result.ok();
84 }
85
86 @Override
87 public Result getJyFileInfoByjybsm(List<String> jnmlList) {
88 QueryWrapper<DgLendCatalogDO> wrapper = new QueryWrapper<>();
89 wrapper.in("BSM_LENDCATALOG",jnmlList);
90 List<DgLendCatalogDO> list=dglendcatalogMapper.selectList(wrapper);
91 return Result.ok(list);
92 }
93
94 @Override
95 public Result deleteDanganJyBatch(List<DgLendCatalogDO> jywjDOList) {
96 QueryWrapper<DgLendCatalogDO> wrapper = new QueryWrapper<>();
97 wrapper.in("BSM_LENDCATALOG",jywjDOList);
98 dglendcatalogMapper.delete(wrapper);
99 return Result.ok();
100 }
101
102 @Override
103 public Result deleteJyMlInfoByDA(String bsm_lendcatalog) {
104 dglendcatalogMapper.deleteById(bsm_lendcatalog);
105 return Result.ok();
106 }
107
108
109 }
1 package com.pashanhoo.lendfile.controller;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.lendfile.entity.vo.AddDgLendFileRequest;
5 import com.pashanhoo.lendfile.entity.vo.UpdateDgLendFileRequest;
6 import com.pashanhoo.lendfile.entity.vo.DgLendFileSearchRequest;
7 import com.pashanhoo.lendfile.service.DgLendFileService;
8 import org.springframework.web.bind.annotation.RestController;
9 import org.springframework.web.bind.annotation.*;
10 import io.swagger.annotations.Api;
11 import io.swagger.annotations.ApiOperation;
12 import io.swagger.annotations.ApiParam;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import java.util.List;
15
16 /**
17 * <p>
18 * 档案借阅文件 前端控制器
19 * </p>
20 *
21 * @author
22 * @since 2021-11-09
23 */
24 @RestController
25 @RequestMapping("/system/dgLendFile/")
26 @Api(tags = "档案借阅文件接口")
27 public class DgLendFileController {
28 @Autowired
29 private DgLendFileService dglendfileService;
30
31 @PostMapping("insertDgLendFile")
32 @ApiOperation("新增档案借阅文件")
33 public Result insertDgLendFile(@RequestBody AddDgLendFileRequest request){
34 if(dglendfileService.insertDgLendFile(request)){
35 return Result.ok();
36 }
37 return Result.error("新增失败");
38 }
39
40 @DeleteMapping("deleteDgLendFileByIds")
41 @ApiOperation(value = "批量删除档案借阅文件")
42 public Result deleteDgLendFileByIds(@ApiParam("档案借阅文件ID列表") @RequestParam(value = "idList") List<String> idList) {
43 if(dglendfileService.removeByIds(idList)) {
44 return Result.ok("删除成功");
45 }
46 return Result.error("删除失败");
47 }
48
49 @PutMapping("updateDgLendFile")
50 @ApiOperation("修改档案借阅文件")
51 public Result updateDgLendFile(@RequestBody UpdateDgLendFileRequest request){
52 if(dglendfileService.updateDgLendFile(request)) {
53 return Result.ok("修改成功");
54 }
55 return Result.error("修改失败");
56 }
57
58 @GetMapping("getDgLendFileDetailById")
59 @ApiOperation(value = "读取明细")
60 public Result getDgLendFileDetailById(@ApiParam("档案借阅文件ID") @RequestParam String id){
61 return Result.ok(dglendfileService.getDgLendFileDetailById(id));
62 }
63
64 @PostMapping("search")
65 @ApiOperation(value = "根据条件进行列表查询")
66 public Result searchDgLendFileList(@RequestBody DgLendFileSearchRequest request) {
67 //TODO 默认排序条件设置
68 request.defaultFillPageProp("","");
69 return Result.ok(dglendfileService.searchDgLendFileList(request));
70 }
71 }
1 package com.pashanhoo.lendfile.entity;
2
3 import java.util.List;
4 import com.pashanhoo.lendfile.entity.vo.AddDgLendFileRequest;
5 import com.pashanhoo.lendfile.entity.vo.DgLendFileDetailVO;
6 import com.pashanhoo.lendfile.entity.vo.DgLendFileListVO;
7 import com.pashanhoo.lendfile.entity.vo.UpdateDgLendFileRequest;
8 import org.mapstruct.Mapper;
9
10 /**
11 * @author
12 * @since 2021-11-09
13 */
14 @Mapper(componentModel = "spring")
15 public interface DgLendFileConverter{
16 DgLendFileDO addRequest2DO(AddDgLendFileRequest request);
17
18 DgLendFileDetailVO do2DetailVO(DgLendFileDO dglendfileDO);
19
20 DgLendFileDO updateRequest2DO(UpdateDgLendFileRequest request);
21
22 DgLendFileListVO do2ListVO(DgLendFileDO dglendfileDO);
23
24 List<DgLendFileListVO> doList2ListVOList(List<DgLendFileDO> dglendfileDOList);
25
26 List<DgLendFileDO> addLendFileList(List<AddDgLendFileRequest> request);
27 }
1 package com.pashanhoo.lendfile.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import java.io.Serializable;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 /**
12 * <p>
13 * 档案借阅文件
14 * </p>
15 *
16 * @author
17 * @since 2021-11-09
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @TableName("DG_LEND_FILE")
22 public class DgLendFileDO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 借阅文件标识码
28 */
29 @TableId(value = "BSM_LENDFILE", type = IdType.UUID)
30 private String bsmLendfile;
31
32 /**
33 * 借阅目录标识码
34 */
35 @TableField("BSM_LENDCATALOG")
36 private String bsmLendcatalog;
37
38 /**
39 * 目录标识码
40 */
41 @TableField("BSM_CATALOG")
42 private String bsmCatalog;
43
44
45 }
1 package com.pashanhoo.lendfile.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案借阅文件新增请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-09
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案借阅文件新增请求实体")
20 public class AddDgLendFileRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24
25 /**
26 * 借阅目录标识码
27 */
28 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
29 private String bsmLendcatalog;
30
31 /**
32 * 目录标识码
33 */
34 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
35 private String bsmCatalog;
36
37 /**
38 * 借阅材料类型
39 */
40 @ApiModelProperty(name = "jycllx", value = "借阅材料类型")
41 private String jycllx;
42
43
44 }
1 package com.pashanhoo.lendfile.entity.vo;
2
3 import com.baomidou.mybatisplus.annotation.TableId;
4 import com.baomidou.mybatisplus.annotation.TableField;
5 import java.io.Serializable;
6 import io.swagger.annotations.ApiModel;
7 import io.swagger.annotations.ApiModelProperty;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 /**
12 * <p>
13 * 档案借阅文件明细实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-09
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案借阅文件明细实体")
22 public class DgLendFileDetailVO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 借阅文件标识码
28 */
29 @ApiModelProperty(name = "bsmLendfile", value = "借阅文件标识码")
30 private String bsmLendfile;
31
32 /**
33 * 借阅目录标识码
34 */
35 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
36 private String bsmLendcatalog;
37
38 /**
39 * 目录标识码
40 */
41 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
42 private String bsmCatalog;
43
44
45 }
1 package com.pashanhoo.lendfile.entity.vo;
2
3 import com.baomidou.mybatisplus.annotation.TableId;
4 import com.baomidou.mybatisplus.annotation.TableField;
5 import java.io.Serializable;
6 import io.swagger.annotations.ApiModel;
7 import io.swagger.annotations.ApiModelProperty;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 /**
12 * <p>
13 * 档案借阅文件列表VO
14 * </p>
15 *
16 * @author
17 * @since 2021-11-09
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案借阅文件列表VO")
22 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
23 public class DgLendFileListVO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 借阅文件标识码
29 */
30 @ApiModelProperty(name = "bsmLendfile", value = "借阅文件标识码")
31 private String bsmLendfile;
32
33 /**
34 * 借阅目录标识码
35 */
36 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
37 private String bsmLendcatalog;
38
39 /**
40 * 目录标识码
41 */
42 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
43 private String bsmCatalog;
44
45
46 }
1 package com.pashanhoo.lendfile.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8 import com.pashanhoo.common.PageInfo;
9
10 /**
11 * <p>
12 * 档案借阅文件列表查询请求实体
13 * </p>
14 *
15 * @author
16 * @since 2021-11-09
17 */
18 @Data
19 @EqualsAndHashCode(callSuper = false)
20 @ApiModel(value="档案借阅文件列表查询请求实体")
21 //TODO 初始查询条件是全部,需要根据情况自行删减
22 public class DgLendFileSearchRequest extends PageInfo implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 借阅文件标识码
28 */
29 @ApiModelProperty(name = "bsmLendfile", value = "借阅文件标识码")
30 private String bsmLendfile;
31
32 /**
33 * 借阅目录标识码
34 */
35 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
36 private String bsmLendcatalog;
37
38 /**
39 * 目录标识码
40 */
41 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
42 private String bsmCatalog;
43
44
45 }
1 package com.pashanhoo.lendfile.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案借阅文件修改请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-09
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案借阅文件修改请求实体")
20 public class UpdateDgLendFileRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 借阅文件标识码
26 */
27 @ApiModelProperty(name = "bsmLendfile", value = "借阅文件标识码")
28 private String bsmLendfile;
29
30 /**
31 * 借阅目录标识码
32 */
33 @ApiModelProperty(name = "bsmLendcatalog", value = "借阅目录标识码")
34 private String bsmLendcatalog;
35
36 /**
37 * 目录标识码
38 */
39 @ApiModelProperty(name = "bsmCatalog", value = "目录标识码")
40 private String bsmCatalog;
41
42
43 }
1 package com.pashanhoo.lendfile.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.lendfile.entity.DgLendFileDO;
5
6 /**
7 * <p>
8 * 档案借阅文件 Mapper 接口
9 * </p>
10 *
11 * @author
12 * @since 2021-11-09
13 */
14 public interface DgLendFileMapper extends BaseMapper<DgLendFileDO> {
15
16 }
1 package com.pashanhoo.lendfile.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.lendfile.entity.DgLendFileDO;
6 import com.pashanhoo.lendfile.entity.vo.AddDgLendFileRequest;
7 import com.pashanhoo.lendfile.entity.vo.DgLendFileDetailVO;
8 import com.pashanhoo.lendfile.entity.vo.UpdateDgLendFileRequest;
9 import com.pashanhoo.lendfile.entity.vo.DgLendFileSearchRequest;
10 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
11
12 /**
13 * <p>
14 * 档案借阅文件 服务类
15 * </p>
16 *
17 * @author
18 * @since 2021-11-09
19 */
20 public interface DgLendFileService extends IService<DgLendFileDO> {
21 /**
22 * 新增记录
23 * @param request
24 * @return
25 */
26 boolean insertDgLendFile(AddDgLendFileRequest request);
27
28 /**
29 * 根据主键查询记录详情
30 * @param id
31 * @return
32 */
33 DgLendFileDetailVO getDgLendFileDetailById(String id);
34
35 /**
36 * 修改单条记录
37 * @param request
38 * @return
39 */
40 boolean updateDgLendFile(UpdateDgLendFileRequest request);
41
42 /**
43 * 根据条件进行列表查询
44 * @param request
45 * @return
46 */
47 Page searchDgLendFileList(DgLendFileSearchRequest request);
48 /**
49 * 通过借阅目录标识码删除借阅文件信息
50 * @param bsm_lendcatalog
51 * @return
52 */
53 Result deleteJyFile(String bsm_lendcatalog);
54
55 }
1 package com.pashanhoo.lendfile.service.impl;
2
3 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.destroycatalog.entity.DgDestructionCatalogDO;
6 import com.pashanhoo.lendfile.entity.DgLendFileConverter;
7 import com.pashanhoo.lendfile.entity.DgLendFileDO;
8 import com.pashanhoo.lendfile.entity.vo.AddDgLendFileRequest;
9 import com.pashanhoo.lendfile.entity.vo.DgLendFileDetailVO;
10 import com.pashanhoo.lendfile.entity.vo.UpdateDgLendFileRequest;
11 import com.pashanhoo.lendfile.entity.vo.DgLendFileSearchRequest;
12 import com.pashanhoo.lendfile.mapper.DgLendFileMapper;
13 import com.pashanhoo.lendfile.service.DgLendFileService;
14 import org.springframework.beans.factory.annotation.Autowired;
15 import org.springframework.stereotype.Service;
16
17 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
18 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
19
20 /**
21 * <p>
22 * 档案借阅文件 服务实现类
23 * </p>
24 *
25 * @author
26 * @since 2021-11-09
27 */
28 @Service
29 public class DgLendFileServiceImpl extends ServiceImpl<DgLendFileMapper, DgLendFileDO> implements DgLendFileService {
30
31 @Autowired
32 private DgLendFileConverter dglendfileConverter;
33
34 @Autowired
35 private DgLendFileMapper dglendfileMapper;
36
37 /**
38 * 新增记录
39 * @param request
40 * @return
41 */
42 @Override
43 public boolean insertDgLendFile(AddDgLendFileRequest request) {
44 DgLendFileDO dglendfileDO = dglendfileConverter.addRequest2DO(request);
45 return this.save(dglendfileDO);
46 }
47
48 /**
49 * 根据主键查询记录详情
50 * @param id
51 * @return
52 */
53 @Override
54 public DgLendFileDetailVO getDgLendFileDetailById(String id) {
55 DgLendFileDO dglendfileDO = this.getById(id);
56 return dglendfileConverter.do2DetailVO(dglendfileDO);
57 }
58
59 /**
60 * 修改单条记录
61 * @param request
62 * @return
63 */
64 @Override
65 public boolean updateDgLendFile(UpdateDgLendFileRequest request) {
66 DgLendFileDO dglendfileDO = dglendfileConverter.updateRequest2DO(request);
67 return this.updateById(dglendfileDO);
68 }
69
70 /**
71 * 根据条件进行列表查询
72 * @param request
73 * @return
74 */
75 @Override
76 public Page searchDgLendFileList(DgLendFileSearchRequest request) {
77 Page<DgLendFileDO> pageParam = new Page<DgLendFileDO>(request.getCurrentPage(), request.getPageSize());
78 QueryWrapper<DgLendFileDO> wrapper = new QueryWrapper<>();
79 //设置默认排序
80 wrapper = "desc".equals(request.getSortOrder()) ? wrapper.orderByDesc(request.getSortField()) : wrapper.orderByAsc(request.getSortField());
81
82 //TODO 根据当前情况设置wrapper条件
83
84 Page page = this.page(pageParam, wrapper);
85 //将查询出来的DO List转为 ListVO List并重新设置到page对象中,并返回page对象
86 return page.setRecords(dglendfileConverter.doList2ListVOList(page.getRecords()));
87 }
88
89 @Override
90 public Result deleteJyFile(String bsm_lendcatalog) {
91 QueryWrapper<DgLendFileDO> wrapper = new QueryWrapper<>();
92 wrapper.eq(bsm_lendcatalog!=null && !"".equals(bsm_lendcatalog),"BSM_LENDCATALOG",bsm_lendcatalog);
93 int result=dglendfileMapper.delete(wrapper);
94 if(result!=0){
95 return Result.ok();
96 }else{
97 return Result.error("操作失败");
98 }
99 }
100
101 }
1 package com.pashanhoo.modify.controller;
2
3 import com.baomidou.mybatisplus.core.metadata.IPage;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.modify.entity.vo.*;
6 import com.pashanhoo.modify.service.DgArchivesModifyService;
7 import org.springframework.web.bind.annotation.RestController;
8 import org.springframework.web.bind.annotation.*;
9 import io.swagger.annotations.Api;
10 import io.swagger.annotations.ApiOperation;
11 import io.swagger.annotations.ApiParam;
12 import org.springframework.beans.factory.annotation.Autowired;
13
14 import java.util.List;
15
16 /**
17 * <p>
18 * 档案修改信息 前端控制器
19 * </p>
20 *
21 * @author
22 * @since 2021-11-05
23 */
24 @RestController
25 @RequestMapping("/system/dgArchivesModify/")
26 @Api(tags = "档案修改信息接口")
27 public class DgArchivesModifyController {
28 @Autowired
29 private DgArchivesModifyService dgarchivesmodifyService;
30
31 @GetMapping("insertDgArchivesModify")
32 @ApiOperation("档案修改记录新增")
33 public Result insertDgArchivesModify(@ApiParam("档案标识码") @RequestParam String bsmArchive){
34 if(dgarchivesmodifyService.insertDgArchivesModify(bsmArchive)){
35 return Result.ok();
36 }
37 return Result.error("新增失败");
38 }
39
40 @DeleteMapping("deleteDgArchivesModifyByIds")
41 @ApiOperation(value = "批量删除档案修改信息")
42 public Result deleteDgArchivesModifyByIds(@ApiParam("档案修改标识码") @RequestParam(value = "bsmModify") String bsmModify) {
43 if(dgarchivesmodifyService.delete(bsmModify)) {
44 return Result.ok("删除成功");
45 }
46 return Result.error("删除失败");
47 }
48
49 @PutMapping("updateDgArchivesModify")
50 @ApiOperation("修改档案修改状态--归档操作")
51 public Result updateDgArchivesModify(@RequestBody UpdateDgArchivesModifyRequest request){
52 if(dgarchivesmodifyService.updateDgArchivesModify(request)) {
53 return Result.ok("修改成功");
54 }
55 return Result.error("修改失败");
56 }
57
58 @GetMapping("getDgArchivesModifyDetailById")
59 @ApiOperation(value = "读取明细")
60 public Result getDgArchivesModifyDetailById(@ApiParam("档案修改信息ID") @RequestParam String id){
61 return Result.ok(dgarchivesmodifyService.getDgArchivesModifyDetailById(id));
62 }
63
64 @PostMapping("searchDgArchivesModifyList")
65 @ApiOperation(value = "修改列表查询")
66 public Result<IPage<DgArchivesModifyListVO>> searchDgArchivesModifyList(@RequestBody DgArchivesModifySearchRequest request) {
67 return Result.ok(dgarchivesmodifyService.searchDgArchivesModifyList(request));
68 }
69
70 @GetMapping("getArchiveWithModify")
71 @ApiOperation(value = "一个档案对应的修改列表查询")
72 public Result<List<DgArchivesModifyDetailVO>> getArchiveWithModify(@ApiParam("档案标识码") @RequestParam String bsmArchive) {
73 return Result.ok(dgarchivesmodifyService.getArchiveWithModify(bsmArchive));
74 }
75 }
1 package com.pashanhoo.modify.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.modify.entity.vo.AddDgArchivesModifyRequest;
6 import com.pashanhoo.modify.entity.vo.DgArchivesModifyDetailVO;
7 import com.pashanhoo.modify.entity.vo.DgArchivesModifyListVO;
8 import com.pashanhoo.modify.entity.vo.UpdateDgArchivesModifyRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgArchivesModifyConverter{
17 DgModifyDO addRequest2DO(AddDgArchivesModifyRequest request);
18
19 DgArchivesModifyDetailVO do2DetailVO(DgModifyDO dgarchivesmodifyDO);
20
21 DgModifyDO updateRequest2DO(UpdateDgArchivesModifyRequest request);
22
23 DgArchivesModifyListVO do2ListVO(DgModifyDO dgarchivesmodifyDO);
24
25 List<DgArchivesModifyListVO> doList2ListVOList(List<DgModifyDO> dgarchivesmodifyDOList);
26
27 List<DgArchivesModifyDetailVO> doList2DetailVOList(List<DgModifyDO> dgarchivesmodifyDOList);
28 }
1 package com.pashanhoo.modify.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import java.util.Date;
6 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableField;
8 import java.io.Serializable;
9
10 import com.fasterxml.jackson.annotation.JsonFormat;
11 import lombok.Data;
12 import lombok.EqualsAndHashCode;
13 import org.springframework.format.annotation.DateTimeFormat;
14
15 /**
16 * <p>
17 * 档案修改信息
18 * </p>
19 *
20 * @author
21 * @since 2021-11-05
22 */
23 @Data
24 @EqualsAndHashCode(callSuper = false)
25 @TableName("DG_MODIFY")
26 public class DgModifyDO implements Serializable {
27
28 private static final long serialVersionUID = 1L;
29
30 /**
31 * 修改标识码
32 */
33 @TableId(value = "BSM_MODIFY", type = IdType.UUID)
34 private String bsmModify;
35
36 /**
37 * 档案标识码
38 */
39 @TableField("BSM_ARCHIVES")
40 private String bsmArchives;
41
42 /**
43 * 修改编号
44 */
45 @TableField("XGBH")
46 private String xgbh;
47
48 /**
49 * 原档案信息
50 */
51 @TableField("YDAXX")
52 private String ydaxx;
53
54 /**
55 * 修改内容
56 */
57 @TableField("XGNR")
58 private String xgnr;
59
60 /**
61 * 创建时间
62 */
63 @TableField("createTime")
64 @DateTimeFormat(pattern = "yyyy-MM-dd")
65 @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
66 private Date createTime;
67
68 /**
69 * 修改人
70 */
71 @TableField("CREATER")
72 private String creater;
73
74 /**
75 * 备注
76 */
77 @TableField("BZ")
78 private String bz;
79
80 /**
81 * 状态1:修改中,2:已归档
82 */
83 @TableField("STATE")
84 private String state;
85
86 /**
87 * 归档时间
88 */
89 @TableField("GDSJ")
90 @DateTimeFormat(pattern = "yyyy-MM-dd")
91 @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
92 private Date gdsj;
93 }
1 package com.pashanhoo.modify.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import com.fasterxml.jackson.annotation.JsonFormat;
8 import io.swagger.annotations.ApiModel;
9 import io.swagger.annotations.ApiModelProperty;
10 import lombok.Data;
11 import lombok.EqualsAndHashCode;
12 import org.springframework.format.annotation.DateTimeFormat;
13
14 /**
15 * <p>
16 * 档案修改信息新增请求实体
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 @Data
23 @EqualsAndHashCode(callSuper = false)
24 @ApiModel(value="档案修改信息新增请求实体")
25 public class AddDgArchivesModifyRequest implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 修改编号
38 */
39 @ApiModelProperty(name = "xgbh", value = "修改编号")
40 private String xgbh;
41
42 /**
43 * 原档案信息
44 */
45 @ApiModelProperty(name = "ydaxx", value = "原档案信息")
46 private String ydaxx;
47
48 /**
49 * 修改内容
50 */
51 @ApiModelProperty(name = "xgnr", value = "修改内容")
52 private String xgnr;
53
54 /**
55 * 创建时间
56 */
57 @ApiModelProperty(name="createTime" ,value = "创建时间")
58 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
59 private Date createTime;
60
61 /**
62 * 修改人
63 */
64 @ApiModelProperty(name = "CREATER",value = "创建人")
65 private String creater;
66
67 /**
68 * 备注
69 */
70 @ApiModelProperty(name = "bz", value = "备注")
71 private String bz;
72
73 /**
74 * 状态1:修改中,2:已归档
75 */
76 @ApiModelProperty(name = "state", value = "状态1:修改中,2:已归档")
77 private String state;
78
79 /**
80 * 归档时间
81 */
82 @ApiModelProperty(name = "gdsj", value = "归档时间")
83 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
84 private Date gdsj;
85 }
1 package com.pashanhoo.modify.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案修改信息明细实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案修改信息明细实体")
24 public class DgArchivesModifyDetailVO implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 修改标识码
30 */
31 @ApiModelProperty(name = "bsmModify", value = "修改标识码")
32 private String bsmModify;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 修改编号
42 */
43 @ApiModelProperty(name = "xgbh", value = "修改编号")
44 private String xgbh;
45
46 /**
47 * 原档案信息
48 */
49 @ApiModelProperty(name = "ydaxx", value = "原档案信息")
50 private String ydaxx;
51
52 /**
53 * 修改内容
54 */
55 @ApiModelProperty(name = "xgnr", value = "修改内容")
56 private String xgnr;
57
58 /**
59 * 创建时间
60 */
61 @ApiModelProperty(name="createTime" ,value = "创建时间")
62 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
63 private Date createTime;
64
65 /**
66 * 修改人
67 */
68 @ApiModelProperty(name = "CREATER",value = "创建人")
69 private String creater;
70
71 /**
72 * 备注
73 */
74 @ApiModelProperty(name = "bz", value = "备注")
75 private String bz;
76
77 /**
78 * 状态1:修改中,2:已归档
79 */
80 @ApiModelProperty(name = "state", value = "状态1:修改中,2:已归档")
81 private String state;
82
83 /**
84 * 归档时间
85 */
86 @ApiModelProperty(name = "gdsj", value = "归档时间")
87 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
88 private Date gdsj;
89 }
1 package com.pashanhoo.modify.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案修改信息列表VO
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案修改信息列表VO")
24
25 public class DgArchivesModifyListVO implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28
29 /**
30 * 修改标识码
31 */
32 @ApiModelProperty(name = "bsmModify",value = "修改标识码")
33 private String bsmModify;
34
35 /**
36 * 案卷标识码
37 */
38 @ApiModelProperty(name = "bsmArchives", value = "案卷标识码")
39 private String bsmArchives;
40
41 /**
42 * 权利类型
43 */
44 @ApiModelProperty(name = "qllx", value = "权利类型")
45 private String qllx;
46 /**
47 * 登记类型
48 */
49 @ApiModelProperty(name = "djlx", value = "登记类型")
50 private String djlx;
51
52 /**
53 * 档案号
54 */
55 @ApiModelProperty(name = "ajh", value = "档案号")
56 private String ajh;
57
58 /**
59 * 业务号
60 */
61 @ApiModelProperty(name = "ywh", value = "业务号")
62 private String ywh;
63
64 /**
65 * 不动产单元号
66 */
67 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
68 private String bdcdyh;
69
70 /**
71 * 权利人
72 */
73 @ApiModelProperty(name = "qlr", value = "权利人")
74 private String qlr;
75
76 /**
77 * 义务人
78 */
79 @ApiModelProperty(name = "ywr", value = "义务人")
80 private String ywr;
81
82 /**
83 * 不动产证件号码
84 */
85 @ApiModelProperty(name = "bdcqzh", value = "不动产证件号码")
86 private String bdcqzh;
87
88 /**
89 * 修改时间
90 */
91 @ApiModelProperty(name = "createTime", value = "修改时间")
92 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
93 private Date createTime;
94
95 /**
96 * 修改人
97 */
98 @ApiModelProperty(name = "creater", value = "修改人")
99 private String creater;
100
101 /**
102 * 不动产单元号数量
103 */
104 @ApiModelProperty(name = "bdcdyNum", value = "不动产单元号数量")
105 private String bdcdyNum;
106
107 /**
108 * 状态 1:修改中.2:已归档
109 */
110 @ApiModelProperty(name = "state", value = "状态 1:修改中.2:已归档")
111 private String state;
112
113 }
1 package com.pashanhoo.modify.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import com.pashanhoo.common.PageInfo;
12 import org.springframework.format.annotation.DateTimeFormat;
13
14 /**
15 * <p>
16 * 档案修改信息列表查询请求实体
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 @Data
23 @EqualsAndHashCode(callSuper = false)
24 @ApiModel(value="档案修改信息列表查询请求实体")
25 public class DgArchivesModifySearchRequest extends PageInfo implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28 /**
29 * 登记业务名称
30 */
31 @ApiModelProperty(name = "djywmc", value = "登记业务名称")
32 private String djywmc;
33 /**
34 * 登记类型
35 */
36 @ApiModelProperty(name = "djlx", value = "登记类型")
37 private String djlx;
38 /**
39 * 修改人
40 */
41 @ApiModelProperty(name = "creater", value = "修改人")
42 private String creater;
43 /**
44 * 修改起始时间
45 */
46 @ApiModelProperty(name = "xgqssj", value = "修改起始时间")
47 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
48 private Date xgqssj;
49 /**
50 * 修改截止时间
51 */
52 @ApiModelProperty(name = "xgjzsj", value = "修改截止时间")
53 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
54 private Date xgjzsj;
55 /**
56 * 档案号
57 */
58 @ApiModelProperty(name = "ajh", value = "档案号")
59 private String ajh;
60 /**
61 * 业务号
62 */
63 @ApiModelProperty(name = "ywh", value = "业务号")
64 private String ywh;
65 /**
66 * 不动产单元号
67 */
68 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
69 private String bdcdyh;
70 /**
71 * 不动产权证号
72 */
73 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
74 private String bdcqzh;
75
76 }
1 package com.pashanhoo.modify.entity.vo;
2
3 import com.pashanhoo.archive.entity.DgArchivesDO;
4 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
5 import com.pashanhoo.business.entity.DgBusinessDO;
6 import com.pashanhoo.catalog.entity.DgArchivesCatalogDO;
7 import com.pashanhoo.file.entity.DgFileDO;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 import java.io.Serializable;
12 import java.util.List;
13
14 /**
15 * 修改记录实体
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 public class ModifyRecord implements Serializable {
20
21 private static final long serialVersionUID = 1L;
22
23 /**
24 * 案卷基本信息
25 */
26 DgArchivesDO archivesDO;
27
28 /**
29 * 业务信息
30 */
31 DgBusinessDO dgBusinessDO;
32
33 /**
34 * 不动产单元信息
35 */
36 List<DgBdcdyDO> dgBdcdyDOList;
37
38 /**
39 * 卷内目录
40 */
41 List<DgArchivesCatalogDO> catalogDOList;
42
43 /**
44 * 附件
45 */
46 List<DgFileDO> dgFileDOList;
47 }
1 package com.pashanhoo.modify.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.fasterxml.jackson.annotation.JsonFormat;
7 import io.swagger.annotations.ApiModel;
8 import io.swagger.annotations.ApiModelProperty;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import org.springframework.format.annotation.DateTimeFormat;
12
13 /**
14 * <p>
15 * 档案修改信息修改请求实体
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @ApiModel(value="档案修改信息修改请求实体")
24 public class UpdateDgArchivesModifyRequest implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 修改标识码
30 */
31 @ApiModelProperty(name = "bsmModify", value = "修改标识码")
32 private String bsmModify;
33
34 /**
35 * 档案标识码
36 */
37 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
38 private String bsmArchives;
39
40 /**
41 * 修改编号
42 */
43 @ApiModelProperty(name = "xgbh", value = "修改编号")
44 private String xgbh;
45
46 /**
47 * 原档案信息
48 */
49 @ApiModelProperty(name = "ydaxx", value = "原档案信息")
50 private String ydaxx;
51
52 /**
53 * 创建时间
54 */
55 @ApiModelProperty(name="createTime" ,value = "创建时间")
56 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
57 private Date createTime;
58
59 /**
60 * 修改人
61 */
62 @ApiModelProperty(name = "CREATER",value = "创建人")
63 private String creater;
64
65 /**
66 * 修改人
67 */
68 @ApiModelProperty(name = "xgr", value = "修改人")
69 private String xgr;
70
71 /**
72 * 备注
73 */
74 @ApiModelProperty(name = "bz", value = "备注")
75 private String bz;
76
77 /**
78 * 状态1:修改中,2:已归档
79 */
80 @ApiModelProperty(name = "state", value = "状态1:修改中,2:已归档")
81 private String state;
82
83 /**
84 * 归档时间
85 */
86 @ApiModelProperty(name = "gdsj", value = "归档时间")
87 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
88 private Date gdsj;
89 }
1 package com.pashanhoo.modify.mapper;
2
3
4 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 import com.baomidou.mybatisplus.core.metadata.IPage;
6 import com.pashanhoo.modify.entity.DgModifyDO;
7 import com.pashanhoo.modify.entity.vo.DgArchivesModifyListVO;
8 import com.pashanhoo.modify.entity.vo.DgArchivesModifySearchRequest;
9 import org.apache.ibatis.annotations.Param;
10
11 /**
12 * <p>
13 * 档案修改信息 Mapper 接口
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 public interface DgArchivesModifyMapper extends BaseMapper<DgModifyDO> {
20
21 /**
22 * 修改列表查询
23 * @param pageParam
24 * @param request
25 * @return
26 */
27 IPage<DgArchivesModifyListVO> searchDgArchivesModifyList(@Param("pageParam") IPage<DgArchivesModifyListVO> pageParam, @Param("request") DgArchivesModifySearchRequest request);
28 }
1 package com.pashanhoo.modify.service;
2
3
4 import com.baomidou.mybatisplus.core.metadata.IPage;
5 import com.baomidou.mybatisplus.extension.service.IService;
6 import com.pashanhoo.modify.entity.DgModifyDO;
7 import com.pashanhoo.modify.entity.vo.*;
8
9 import java.util.List;
10
11 /**
12 * <p>
13 * 档案修改信息 服务类
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 public interface DgArchivesModifyService extends IService<DgModifyDO> {
20 /**
21 * 新增记录
22 * 1.档案修改记录并把原有的档案信息存入clob字段
23 * 2.修改案卷基本信息状态为正在修改
24 *
25 * @param bsmArchive
26 * @return
27 */
28 boolean insertDgArchivesModify(String bsmArchive);
29
30 /**
31 * 根据主键查询记录详情
32 *
33 * @param id
34 * @return
35 */
36 DgArchivesModifyDetailVO getDgArchivesModifyDetailById(String id);
37
38 /**
39 * 修改记录状态为已归档和归档日期,一并修改档案记录的状态为在库
40 *
41 * @param request
42 * @return
43 */
44 boolean updateDgArchivesModify(UpdateDgArchivesModifyRequest request);
45
46 /**
47 * 修改列表查询
48 *
49 * @param request
50 * @return
51 */
52 IPage<DgArchivesModifyListVO> searchDgArchivesModifyList(DgArchivesModifySearchRequest request);
53
54 /**
55 * 一个档案对应的修改列表查询
56 *
57 * @param bsmArchive
58 * @return
59 */
60 List<DgArchivesModifyDetailVO> getArchiveWithModify(String bsmArchive);
61
62 /**
63 * 删除修改记录,并回滚档案信息和修改档案状态在库
64 * @param bsmModify
65 * @return
66 */
67 boolean delete(String bsmModify);
68 }
1 package com.pashanhoo.modify.service.impl;
2
3 import cn.hutool.core.date.DateTime;
4 import cn.hutool.json.JSON;
5 import cn.hutool.json.JSONConfig;
6 import cn.hutool.json.JSONUtil;
7 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
8 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
9 import com.baomidou.mybatisplus.core.metadata.IPage;
10 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
11 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
12 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
13 import com.pashanhoo.archive.entity.ArchiveStatus;
14 import com.pashanhoo.archive.entity.DgArchivesDO;
15 import com.pashanhoo.archive.service.DgArchivesService;
16 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
17 import com.pashanhoo.bdcdy.service.DgBdcdyService;
18 import com.pashanhoo.business.entity.DgBusinessDO;
19 import com.pashanhoo.business.service.DgBusinessService;
20 import com.pashanhoo.catalog.entity.DgArchivesCatalogDO;
21 import com.pashanhoo.catalog.service.DgArchivesCatalogService;
22 import com.pashanhoo.file.entity.DgFileDO;
23 import com.pashanhoo.file.service.DgFileService;
24 import com.pashanhoo.modify.entity.DgArchivesModifyConverter;
25 import com.pashanhoo.modify.entity.DgModifyDO;
26 import com.pashanhoo.modify.entity.vo.*;
27 import com.pashanhoo.modify.mapper.DgArchivesModifyMapper;
28 import com.pashanhoo.modify.service.DgArchivesModifyService;
29 import com.pashanhoo.replenish.service.impl.DgArchivesReplenishServiceImpl;
30 import org.springframework.beans.factory.annotation.Autowired;
31 import org.springframework.stereotype.Service;
32 import org.springframework.transaction.annotation.Transactional;
33
34 import java.util.List;
35 import java.util.stream.Collectors;
36
37 /**
38 * <p>
39 * 档案修改信息 服务实现类
40 * </p>
41 *
42 * @author
43 * @since 2021-11-05
44 */
45 @Service
46 public class DgArchivesModifyServiceImpl extends ServiceImpl<DgArchivesModifyMapper, DgModifyDO> implements DgArchivesModifyService {
47
48 @Autowired
49 private DgArchivesModifyConverter dgarchivesmodifyConverter;
50
51 @Autowired
52 private DgArchivesModifyMapper dgarchivesmodifyMapper;
53
54 @Autowired
55 DgArchivesService archivesService;
56
57 @Autowired
58 DgBusinessService businessService;
59
60 @Autowired
61 DgBdcdyService bdcdyService;
62
63 @Autowired
64 DgArchivesCatalogService catalogService;
65
66 @Autowired
67 DgFileService fileService;
68
69 /**
70 * 新增记录
71 * 1.档案修改记录并把原有的档案信息存入clob字段
72 * 2.修改案卷基本信息状态为正在修改
73 *
74 * @param bsmArchive
75 * @return
76 */
77 @Override
78 @Transactional(rollbackFor = Exception.class)
79 public boolean insertDgArchivesModify(String bsmArchive) {
80 //获取案卷基本信息
81 DgArchivesDO archive = archivesService.getById(bsmArchive);
82 //获取业务信息
83 QueryWrapper<DgBusinessDO> businessWrapper = new QueryWrapper<>();
84 businessWrapper.lambda().eq(DgBusinessDO::getBsmArchives, bsmArchive);
85 DgBusinessDO business = businessService.getOne(businessWrapper);
86 //获取不动产信息
87 QueryWrapper<DgBdcdyDO> bdcdyWrapper = new QueryWrapper<>();
88 bdcdyWrapper.lambda().eq(DgBdcdyDO::getBsmArchives, bsmArchive);
89 List<DgBdcdyDO> bdcdyList = bdcdyService.list(bdcdyWrapper);
90 //获取卷内目录
91 QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>();
92 catalogWrapper.lambda().eq(DgArchivesCatalogDO::getBsmArchives, bsmArchive);
93 List<DgArchivesCatalogDO> catalogList = catalogService.list(catalogWrapper);
94 //获取案卷附件
95 List<String> catalogIdList = catalogList.stream().map(DgArchivesCatalogDO::getBsmCatalog).collect(Collectors.toList());
96 QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>();
97 fileWrapper.lambda().in(DgFileDO::getBsmCatalog, catalogIdList);
98 List<DgFileDO> fileList = fileService.list(fileWrapper);
99
100 ModifyRecord modifyRecord = new ModifyRecord();
101 modifyRecord.setArchivesDO(archive);
102 modifyRecord.setDgBusinessDO(business);
103 modifyRecord.setDgBdcdyDOList(bdcdyList);
104 modifyRecord.setCatalogDOList(catalogList);
105 modifyRecord.setDgFileDOList(fileList);
106
107 JSONConfig jsonConfig = JSONConfig.create().setIgnoreNullValue(false).setOrder(true).setDateFormat("yyyy-MM-dd HH:mm:ss");
108 JSON modifyRecordJson = JSONUtil.parse(modifyRecord, jsonConfig);
109 String modifyRecordStr = JSONUtil.toJsonStr(modifyRecordJson);
110
111 DgModifyDO modifyDO = new DgModifyDO();
112 modifyDO.setBsmArchives(bsmArchive);
113 modifyDO.setXgbh(IdWorker.get32UUID());
114 modifyDO.setYdaxx(modifyRecordStr);
115 // TODO: 2021/11/23/0023 暂时填null
116 modifyDO.setXgnr(null);
117 modifyDO.setCreateTime(DateTime.now());
118 // TODO: 2021/11/23/0023 暂时填null
119 modifyDO.setCreater(null);
120 modifyDO.setState("1");
121 modifyDO.setGdsj(null);
122
123 //修改档案状态
124 UpdateWrapper<DgArchivesDO> archiveUpdateWrapper = new UpdateWrapper<>();
125 archiveUpdateWrapper.lambda().set(DgArchivesDO::getDazt, ArchiveStatus.MODIFYING.getCode()).eq(DgArchivesDO::getBsmArchives,bsmArchive);
126 archivesService.update(archiveUpdateWrapper);
127
128 return this.save(modifyDO);
129 }
130
131 /**
132 * 根据主键查询记录详情
133 *
134 * @param id
135 * @return
136 */
137 @Override
138 public DgArchivesModifyDetailVO getDgArchivesModifyDetailById(String id) {
139 DgModifyDO dgarchivesmodifyDO = this.getById(id);
140 return dgarchivesmodifyConverter.do2DetailVO(dgarchivesmodifyDO);
141 }
142
143 /**
144 * 修改记录状态为已归档和归档日期,一并修改档案记录的状态为在库
145 *
146 * @param request
147 * @return
148 */
149 @Override
150 @Transactional(rollbackFor = Exception.class)
151 public boolean updateDgArchivesModify(UpdateDgArchivesModifyRequest request) {
152 DgModifyDO dgarchivesmodifyDO = dgarchivesmodifyConverter.updateRequest2DO(request);
153 UpdateWrapper<DgModifyDO> modifyWrapper = new UpdateWrapper<>();
154 modifyWrapper.lambda().set(DgModifyDO::getState, "2").set(DgModifyDO::getGdsj, DateTime.now());
155 this.update(dgarchivesmodifyDO, modifyWrapper);
156 //修改档案记录状态
157 UpdateWrapper<DgArchivesDO> archivesWrapper = new UpdateWrapper<>();
158 archivesWrapper.lambda().set(DgArchivesDO::getDazt, ArchiveStatus.STORED.getCode()).eq(DgArchivesDO::getBsmArchives, request.getBsmArchives());
159 return archivesService.update(archivesWrapper);
160 }
161
162 /**
163 * 根据条件进行列表查询
164 *
165 * @param request
166 * @return
167 */
168 @Override
169 public IPage<DgArchivesModifyListVO> searchDgArchivesModifyList(DgArchivesModifySearchRequest request) {
170 IPage<DgArchivesModifyListVO> pageParam = new Page<>(request.getCurrentPage(), request.getPageSize());
171 IPage<DgArchivesModifyListVO> list = dgarchivesmodifyMapper.searchDgArchivesModifyList(pageParam, request);
172 List<DgArchivesModifyListVO> records = list.getRecords();
173 List<DgArchivesModifyListVO> clean = records.stream().filter(DgArchivesReplenishServiceImpl.distinctByKey(DgArchivesModifyListVO::getBsmModify)).collect(Collectors.toList());
174 list.setRecords(clean).setTotal(clean.size());
175 return list;
176 }
177
178 /**
179 * 一个档案对应的修改列表查询
180 *
181 * @param bsmArchive
182 * @return
183 */
184 @Override
185 public List<DgArchivesModifyDetailVO> getArchiveWithModify(String bsmArchive) {
186 QueryWrapper<DgModifyDO> modifyWrapper = new QueryWrapper<>();
187 modifyWrapper.lambda().eq(DgModifyDO::getBsmArchives, bsmArchive);
188 List<DgModifyDO> modifyDOS = this.list(modifyWrapper);
189 return dgarchivesmodifyConverter.doList2DetailVOList(modifyDOS);
190 }
191
192 /**
193 * 删除修改记录,并回滚档案信息和修改档案状态在库
194 * @param bsmModify
195 * @return
196 */
197 @Override
198 @Transactional(rollbackFor = Exception.class)
199 public boolean delete(String bsmModify) {
200 //获取修改前信息
201 DgModifyDO modifyDO = this.getById(bsmModify);
202 String bsmArchives = modifyDO.getBsmArchives();
203 //获取原档案信息json字段
204 String ydaxxJson = modifyDO.getYdaxx();
205 ModifyRecord modifyRecord = JSONUtil.toBean(ydaxxJson, ModifyRecord.class);
206
207 //删除修改记录表数据
208 this.removeById(bsmModify);
209
210 //删除案卷附件
211 QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>();
212 catalogWrapper.lambda().eq(DgArchivesCatalogDO::getBsmArchives, bsmArchives);
213 List<DgArchivesCatalogDO> catalogDOList = catalogService.list(catalogWrapper);
214 List<String> bsmCatalogList = catalogDOList.stream().map(DgArchivesCatalogDO::getBsmCatalog).collect(Collectors.toList());
215 QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>();
216 fileWrapper.lambda().in(DgFileDO::getBsmCatalog, bsmCatalogList);
217 fileService.remove(fileWrapper);
218 //插入原案卷附件
219 fileService.saveBatch(modifyRecord.getDgFileDOList());
220
221 //删除案卷目录
222 catalogService.removeByIds(bsmCatalogList);
223 //插入原案卷目录
224 catalogService.saveBatch(modifyRecord.getCatalogDOList());
225
226 //删除不动产信息
227 QueryWrapper<DgBdcdyDO> bdcdyWrapper = new QueryWrapper<>();
228 bdcdyWrapper.lambda().eq(DgBdcdyDO::getBsmArchives, bsmArchives);
229 bdcdyService.remove(bdcdyWrapper);
230 //插入原不动产信息
231 bdcdyService.saveBatch(modifyRecord.getDgBdcdyDOList());
232
233 //删除业务信息
234 QueryWrapper<DgBusinessDO> businessWrapper = new QueryWrapper<>();
235 businessWrapper.lambda().eq(DgBusinessDO::getBsmArchives, bsmArchives);
236 businessService.remove(businessWrapper);
237 //插入原业务信息
238 businessService.save(modifyRecord.getDgBusinessDO());
239
240 //更新档案信息
241 DgArchivesDO archivesDO = modifyRecord.getArchivesDO();
242 archivesDO.setDazt(ArchiveStatus.STORED.getCode());
243 return archivesService.updateById(archivesDO);
244 }
245 }
1 package com.pashanhoo.qys.controller;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.qys.service.EciService;
5 import io.swagger.annotations.Api;
6 import io.swagger.annotations.ApiOperation;
7 import io.swagger.annotations.ApiParam;
8 import org.springframework.beans.factory.annotation.Autowired;
9 import org.springframework.web.bind.annotation.*;
10
11 @RestController
12 @RequestMapping("/eci/")
13 @Api(tags = "电子证照相关接口")
14 public class EciController {
15 @Autowired
16 private EciService eciService;
17
18 @PostMapping("accessCreateContract")
19 @ApiOperation("创建合同接口")
20 public Result accessCreateContract(@ApiParam("不动产权基本信息id")@RequestParam String zsbs,@ApiParam("证件号码")@RequestParam String qlrzjh,@ApiParam("证书编号")@RequestParam String bh) {
21 eciService.createContractForHandle(zsbs,qlrzjh,bh);
22 return Result.ok();
23 }
24 @GetMapping("accessDetails")
25 @ApiOperation("合同详情接口")
26 public Result accessDetails(@ApiParam("电子证照表主键ID")@RequestParam String biz_id) {
27 eciService.accessDetailsForHandle(biz_id);
28 return Result.ok();
29 }
30 @GetMapping("accessDownload")
31 @ApiOperation("下载合同文档接口")
32 public Result accessDownload(@ApiParam("电子证照表主键ID")@RequestParam String biz_id) {
33 eciService.accessDownloadForHandle(biz_id);
34 return Result.ok();
35 }
36 @GetMapping("convert")
37 @ApiOperation("ofd转换服务接口")
38 public Result convert(@ApiParam("电子证照表主键ID")@RequestParam String biz_id) {
39 eciService.convertElecForHandle(biz_id);
40 return Result.ok();
41 }
42
43 }
1 package com.pashanhoo.qys.entity;
2
3 import lombok.Data;
4 import lombok.EqualsAndHashCode;
5
6 import java.io.Serializable;
7
8 @Data
9 @EqualsAndHashCode(callSuper = false)
10 public class ActionRequest implements Serializable {
11 private static final long serialVersionUID = 1L;
12
13 /**
14 * 是
15 * 签署动作类型:CORPORATE(企业签章),PERSONAL(个人签字),LP(法定代表人签字),AUDIT(审批)
16 */
17 private String type;
18
19 /**
20 * 是
21 * 签署动作名称
22 */
23 private String name;
24
25 /**
26 * 是
27 * 签署动作名称
28 */
29 private String autoSign;
30
31 /**
32 * 是
33 * 签署顺序(从1开始);如果想按顺序签署,则分别设置签署动作的serialNo为1,2,3;如果想无序签署,则设置签署动作的serialNo为1,1,1;设置签署动作顺序为1,2,2时,表示第一个先签署,后两个同时签署。
34 */
35 private Integer serialNo;
36
37
38 }
1 package com.pashanhoo.qys.entity;
2
3 import lombok.Data;
4 import lombok.EqualsAndHashCode;
5 import org.springframework.web.multipart.MultipartFile;
6
7 import java.io.Serializable;
8 import java.util.List;
9
10
11 /**
12 * 创建合同请求实体
13 */
14 @Data
15 @EqualsAndHashCode(callSuper = false)
16 public class CreateContractRequest implements Serializable {
17 private static final long serialVersionUID = 1L;
18 /**
19 * 是
20 * 合同名称
21 */
22 private String subject;
23
24 /**
25 * 否
26 * 合同编号,对接方系统中的业务编号
27 */
28 private String sn;
29
30
31
32 /**
33 * 否
34 * 用印流程ID
35 */
36 private String categoryId;
37
38
39
40 /**
41 * 否
42 * 是否发起合同,默认true。(true:立即发起;false:保存为草稿)
43 */
44 private boolean send;
45
46
47
48
49 /**
50 * 否
51 * 合同创建人姓名
52 */
53 private String creatorName;
54
55 /**
56 * 否
57 * 合同创建人手机号码
58 */
59 private String creatorContact;
60
61
62
63 /**
64 * 否
65 * 发起方名称
66 */
67 private String tenantName;
68
69 /**
70 * 受理申请pdf文件
71 */
72 private MultipartFile file;
73
74 /**
75 * title
76 */
77 private String title;
78
79 /**
80 * title
81 */
82 private String fileType;
83
84
85 /**
86 * 否
87 * 签署方,为空时在合同签署完成后需要调用接口“封存合同”主动结束合同
88 */
89 private List<SignatoryRequest> signatories;
90
91 /**
92 * 否
93 * 模板参数
94 */
95 private List<DocumentParam> documentParams;
96
97
98
99
100
101 }
1 package com.pashanhoo.qys.entity;
2
3 import lombok.Data;
4 import lombok.EqualsAndHashCode;
5
6 import java.io.Serializable;
7 @Data
8 @EqualsAndHashCode(callSuper = false)
9 public class DocumentParam implements Serializable {
10 private static final long serialVersionUID = 1L;
11
12 /**
13 * 是
14 * 模板参数名称
15 */
16 private String name;
17
18 /**
19 * 是
20 * 模板参数值
21 */
22 private String value;
23
24 }
1 package com.pashanhoo.qys.entity;
2
3 import com.baomidou.mybatisplus.annotation.IdType;
4 import com.baomidou.mybatisplus.annotation.TableField;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9
10 import java.util.Date;
11 /**
12 * 电子证照表实体
13 */
14 @Data
15 @EqualsAndHashCode(callSuper = false)
16 @TableName("ELEC_LICENSE_INFO")
17 public class ElecLicenseInfoDo {
18 /**
19 * 合同标识,主键,自己生成
20 */
21 /**
22 * 主键
23 */
24 @TableId(value = "BIZ_ID", type = IdType.UUID)
25 private String bizId;
26
27 /**
28 * 合同ID
29 */
30 @TableField("CONTRACT_ID")
31 private Long contractId;
32
33 /**
34 * 模板参数
35 */
36 @TableField("DOCUMENT_PARAM")
37 private String documentParam;
38
39 /**
40 * 合同文档ID
41 */
42 @TableField("DOCUMENT_ID")
43 private String documentId;
44
45 /**
46 * 合同类型.1:不动产登记证明.2:不动产权证书.3:不动产查询证明
47 */
48 @TableField("HTLX")
49 private String htlx;
50
51 /**
52 * 业务号
53 */
54 @TableField("YWH")
55 private String ywh;
56
57 /**
58 * 证书标识
59 */
60 @TableField("ZSBS")
61 private String zsbs;
62
63 /**
64 * 提交参数
65 */
66 @TableField("TJCS")
67 private String tjcs;
68
69 /**
70 * 返回结果
71 */
72 @TableField("FHJG")
73 private String fhjg;
74
75 /**
76 * 推送状态
77 */
78 @TableField("TSZT")
79 private String tszt;
80
81 /**
82 * 合同状态(DRAFT:草稿,FILLING:拟定中,SIGNING:签署中,COMPLETE:已完成,REJECTED:已退回,RECALLED:已撤回,EXPIRED:已过期,TERMINATING:作废中,TERMINATED:已作废,DELETE:已删除,FINISHED:强制完成)
83 */
84 @TableField("HTZT")
85 private String htzt;
86
87 /**
88 * 推送时间
89 */
90 @TableField("TSSJ")
91 private Date tssj;
92
93 /**
94 * 是否下载 1是2否
95 */
96 @TableField("SFXZ")
97 private String sfxz;
98
99 /**
100 * ofd文件地址
101 */
102 @TableField("OFD_WJDZ")
103 private String ofdWjdz;
104
105 /**
106 * 是否转换1是2否
107 */
108 @TableField("SFZH")
109 private String sfzh;
110
111 /**
112 * jpg文件地址
113 */
114 @TableField("JPG_WJDZ")
115 private String jpgWjdz;
116
117 /**
118 * jpg文件地址
119 */
120 @TableField("SIGN_URL")
121 private String signUrl;
122 /**
123 * 备注
124 */
125 @TableField("BZ")
126 private String bz;
127 /**
128 * 二维码图片
129 */
130 @TableField("EWMIMAGE")
131 private byte[] ewmimage;
132 /**
133 * 0:临时状态,1:现势,2:历史状态
134 */
135 @TableField("DZZZ_STATE")
136 private String dzzz_state;
137 /**
138 * 0:正常,1:创建合同接口报错,2:合同详情接口报错,3:下载ofd接口报错,4:ofd转换接口报错
139 */
140 @TableField("ERR_STATE")
141 private String err_state;
142 /**
143 * 证书编号
144 */
145 @TableField("ZSBH")
146 private String zsbh;
147 /**
148 * 权利人名称
149 */
150 @TableField("QLRMC")
151 private String qlrmc;
152 /**
153 * 证件号
154 */
155 @TableField("ZJH")
156 private String zjh;
157
158
159 }
1 package com.pashanhoo.qys.entity;
2
3 import lombok.Data;
4 import lombok.EqualsAndHashCode;
5
6 import java.io.Serializable;
7 import java.util.List;
8
9 @Data
10 @EqualsAndHashCode(callSuper = false)
11 public class SignatoryRequest implements Serializable {
12 private static final long serialVersionUID = 1L;
13
14 /**
15 * 是
16 * 签约主体类型:COMPANY(外部企业),PERSONAL(个人)
17 */
18 private String tenantType;
19
20 /**
21 * 是
22 * 签约主体名称
23 */
24 private String tenantName;
25
26
27 /**
28 * 是
29 * 签署顺序(从1开始);如果想按顺序签署,则分别设置签署方的serialNo为1,2,3;如果想无序签署,则设置签署方的serialNo为1,1,1;设置签署方顺序为1,2,2时,表示第一个先签署,后两个同时签署。
30 */
31 private Integer serialNo;
32
33 /**
34 * 是
35 * 签约主体名称
36 */
37 private String contact;
38
39
40 /**
41 * 否
42 * 签署动作,用印流程非预设且签署方为发起方时,使用用户传入的签署动作,其余情况使用用印流程的配置
43 */
44 private List<ActionRequest> actions;
45 }
1 package com.pashanhoo.qys.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.qys.entity.ElecLicenseInfoDo;
5 import org.apache.ibatis.annotations.Param;
6
7 import java.util.List;
8
9 public interface ElecLicenseInfoMapper extends BaseMapper<ElecLicenseInfoDo> {
10
11 List<ElecLicenseInfoDo> getEciInfoByZsbs(String zsbs);
12
13
14 List<ElecLicenseInfoDo> getDocumentIdIsNull(String ywh);
15 /**
16 * 获取合同文档ID已经入库并且还未下载集合
17 *
18 * @return
19 */
20 List<ElecLicenseInfoDo> getWaitForDownload(String ywh);
21 /**
22 * 获取已经下载还未转换的集合
23 *
24 * @return
25 */
26 List<ElecLicenseInfoDo> getWaitForConvert(String ywh);
27 /**
28 * 根据业务号和不动产单元号查询义务人名称
29 */
30 List<String> getYwrMcByCOnditon(@Param("ywh")String ywh, @Param("bdcdyh")String bdcdyh);
31
32
33 void updateEciInfo(@Param("bizId")String bizId);
34
35
36 ElecLicenseInfoDo getElecLicenseInfo(ElecLicenseInfoDo elecLicenseInfoDo);
37
38
39
40
41 }
1 package com.pashanhoo.qys.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.qys.entity.ElecLicenseInfoDo;
6
7
8
9
10 public interface EciService extends IService<ElecLicenseInfoDo> {
11
12 /**
13 * 定时任务执行接口
14 */
15 void accessCreateContract();
16
17 /**
18 * 手动执行创建合同
19 */
20 Result createContractForHandle(String zsbs,String qlrzjh,String bh);
21
22 /**
23 * 手动执行获取详情
24 */
25 Result accessDetailsForHandle(String biz_id);
26 /**
27 * 手动执行下载合同
28 */
29 Result accessDownloadForHandle(String biz_id);
30 /**
31 * 手动执行ofd转换
32 */
33 Result convertElecForHandle(String biz_id);
34
35
36 }
1 package com.pashanhoo.qys.service.impl;
2
3 import com.alibaba.fastjson.JSON;
4 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5 import com.pashanhoo.common.EciHttpUtil;
6 import com.pashanhoo.common.Result;
7 import com.pashanhoo.qys.entity.ElecLicenseInfoDo;
8 import com.pashanhoo.qys.mapper.ElecLicenseInfoMapper;
9 import com.pashanhoo.qys.service.EciService;
10 import com.pashanhoo.zhj.mapper.RegBusBdcqzsdjxxMapper;
11 import net.glxn.qrgen.core.image.ImageType;
12 import net.glxn.qrgen.javase.QRCode;
13 import org.apache.commons.codec.binary.Base64;
14 import org.apache.commons.lang3.StringUtils;
15 import org.ofdrw.converter.ImageMaker;
16 import org.ofdrw.reader.OFDReader;
17 import org.slf4j.Logger;
18 import org.slf4j.LoggerFactory;
19 import org.springframework.beans.factory.annotation.Autowired;
20 import org.springframework.beans.factory.annotation.Value;
21 import org.springframework.stereotype.Service;
22
23 import javax.imageio.ImageIO;
24 import java.awt.image.BufferedImage;
25 import java.io.ByteArrayOutputStream;
26 import java.io.File;
27 import java.io.IOException;
28 import java.net.URLEncoder;
29 import java.nio.file.Path;
30 import java.nio.file.Paths;
31 import java.text.SimpleDateFormat;
32 import java.util.*;
33
34
35 @Service
36 public class EciServiceImpl extends ServiceImpl<ElecLicenseInfoMapper, ElecLicenseInfoDo> implements EciService {
37
38 private static Logger logger = LoggerFactory.getLogger(EciServiceImpl.class);
39 @Value("${app.hostUrl}")
40 private String hostUrl;
41
42 @Value("${app.bdcdjzmlc}")
43 private String bdcdjzmlc;
44
45 @Value("${app.bdcqzslc}")
46 private String bdcqzslc;
47
48 @Autowired
49 private RegBusBdcqzsdjxxMapper regBusBdcqzsdjxxMapper;
50 @Autowired
51 private ElecLicenseInfoMapper elecLicenseInfoMapper;
52 @Autowired
53 private EciHttpUtil eciHttpUtil;
54
55
56
57 @Override
58 public void accessCreateContract() {
59 try{
60 List<Map> list=assemblyInfo();
61 if(list!=null && list.size()>0){
62 for (int i = 0; i < list.size(); i++) {
63 //=========创建合同t==============
64 ElecLicenseInfoDo elecLicenseInfo=createContract(list.get(i));
65 if(null==elecLicenseInfo || !"0".equals(elecLicenseInfo.getErr_state())){
66 continue;
67 }
68 //=========合同详情==============
69 ElecLicenseInfoDo details=accessDetails(elecLicenseInfo);
70 if(null==details || !"0".equals(details.getErr_state())){
71 continue;
72 }
73 //=========证照下载==============
74 ElecLicenseInfoDo download=accessDownload(details);
75 if(null==download || !"0".equals(download.getErr_state())){
76 continue;
77 }
78 //=========ofd转换==============
79 ElecLicenseInfoDo ofdzh=convertElec(download);
80 if(null==ofdzh || !"0".equals(ofdzh.getErr_state())){
81 continue;
82 }
83 //修改电子证书标识
84 elecLicenseInfoMapper.updateEciInfo(ofdzh.getBizId());
85 }
86 }
87 }catch (Exception ex){
88 ex.printStackTrace();
89 }
90 }
91
92 @Override
93 public Result createContractForHandle(String zsbs, String qlrzjh, String bh) {
94 List<Map> list=createInfoByHandle(zsbs,qlrzjh,bh);
95 if(list!=null && list.size()>0){
96 for (int i = 0; i < list.size(); i++) {
97 createContract(list.get(i));
98 }
99 }
100 return Result.ok();
101 }
102
103 @Override
104 public Result accessDetailsForHandle(String biz_id) {
105 ElecLicenseInfoDo elecLicenseInfoDo=this.getById(biz_id);
106 if(elecLicenseInfoDo!=null){
107 accessDetails(elecLicenseInfoDo);
108 }
109 return Result.ok();
110 }
111
112 @Override
113 public Result accessDownloadForHandle(String biz_id) {
114 ElecLicenseInfoDo elecLicenseInfoDo=this.getById(biz_id);
115 if(elecLicenseInfoDo!=null){
116 accessDownload(elecLicenseInfoDo);
117 }
118 return Result.ok();
119 }
120
121 @Override
122 public Result convertElecForHandle(String biz_id) {
123 ElecLicenseInfoDo elecLicenseInfoDo=this.getById(biz_id);
124 if(elecLicenseInfoDo!=null){
125 convertElec(elecLicenseInfoDo);
126 elecLicenseInfoMapper.updateEciInfo(biz_id);
127 }
128 return Result.ok();
129 }
130
131 /**
132 *插入电子证照表记录
133 * @param tjcs
134 * @param documentParam
135 * @param backjson
136 * @param jbxxmap
137 */
138 public ElecLicenseInfoDo insertEciInfo(String tjcs,String documentParam, Map backjson,Map jbxxmap){
139 ElecLicenseInfoDo elecLicenseInfoDo=new ElecLicenseInfoDo();
140 elecLicenseInfoDo.setTjcs(tjcs);
141 elecLicenseInfoDo.setDocumentParam(documentParam);
142 elecLicenseInfoDo.setZsbh((String) jbxxmap.get("BH"));
143 elecLicenseInfoDo.setQlrmc((String) jbxxmap.get("QLRMC"));
144 elecLicenseInfoDo.setZjh((String) jbxxmap.get("ZJH"));
145 if(backjson.isEmpty()){
146 elecLicenseInfoDo.setErr_state("1");
147 }else{
148 if ((Integer)backjson.get("code")==0) {
149 Long contractId = Long.valueOf((String) backjson.get("contractId"));
150 //合同ID入库
151 elecLicenseInfoDo.setContractId(contractId);
152 elecLicenseInfoDo.setErr_state("0");
153 regBusBdcqzsdjxxMapper.updateBdcqzsjbxxInfo((String) jbxxmap.get("ID"));
154 }else{
155 elecLicenseInfoDo.setErr_state("1");
156 }
157 }
158 elecLicenseInfoDo.setYwh((String) jbxxmap.get("YWH"));
159 if(((String)jbxxmap.get("BDCQZH")).contains("证明")){
160 elecLicenseInfoDo.setHtlx("1");
161 }else{
162 elecLicenseInfoDo.setHtlx("2");
163 }
164 elecLicenseInfoDo.setZsbs((String) jbxxmap.get("ID"));
165 elecLicenseInfoDo.setEwmimage(getImage((String) jbxxmap.get("ID"),(String) jbxxmap.get("QLRMC"),(String) jbxxmap.get("ZJH")));
166 //返回结果入库
167 elecLicenseInfoDo.setFhjg(JSON.toJSONString(backjson));
168 //未下载
169 elecLicenseInfoDo.setSfxz("2");
170 //未转换
171 elecLicenseInfoDo.setSfzh("2");
172 this.save(elecLicenseInfoDo);
173 return elecLicenseInfoDo;
174 }
175 /**
176 *修改电子证照表记录
177 * @param tjcs
178 * @param documentParam
179 * @param backjson
180 * @param
181 */
182 public ElecLicenseInfoDo updateEciInfo(String tjcs,String documentParam, Map backjson,ElecLicenseInfoDo elecLicenseInfoDo){
183 elecLicenseInfoDo.setTjcs(tjcs);
184 elecLicenseInfoDo.setDocumentParam(documentParam);
185 if(backjson.isEmpty()){
186 elecLicenseInfoDo.setErr_state("1");
187 }else{
188 if ((Integer)backjson.get("code")==0) {
189 Long contractId = Long.valueOf((String) backjson.get("contractId"));
190 //合同ID入库
191 elecLicenseInfoDo.setContractId(contractId);
192 elecLicenseInfoDo.setErr_state("0");
193 regBusBdcqzsdjxxMapper.updateBdcqzsjbxxInfo(elecLicenseInfoDo.getZsbs());
194 }else{
195 elecLicenseInfoDo.setErr_state("1");
196 }
197 }
198 //返回结果入库
199 elecLicenseInfoDo.setFhjg(JSON.toJSONString(backjson));
200 //未下载
201 elecLicenseInfoDo.setSfxz("2");
202 //未转换
203 elecLicenseInfoDo.setSfzh("2");
204 this.updateById(elecLicenseInfoDo);
205 return elecLicenseInfoDo;
206 }
207 /**
208 * 生成文件流
209 * @param jbxxId
210 * @return
211 */
212 public byte[] getImage(String jbxxId,String qlr,String zjh){
213 byte[] data=null;
214 try{
215 String imageurl="https://www.hzbdcdj.com/api?scene="+jbxxId+"&qlr="+ URLEncoder.encode(qlr,"UTF-8")+"&zjh="+zjh;
216 logger.info("55555555============"+imageurl);
217 ByteArrayOutputStream out= QRCode.from(imageurl).to(ImageType.PNG).stream();
218 data = out.toByteArray();
219 }catch (Exception ex){
220 ex.printStackTrace();
221 }
222 return data;
223 }
224
225 /**
226 * 根据基本信息id生成二维码图片加密字符串
227 * @param jbxxId
228 * @return
229 */
230 public String getBase64ewm(String jbxxId,String qlr,String zjh){
231 byte[] data=getImage(jbxxId,qlr,zjh);
232 String base64ewm =Base64.encodeBase64String(data);
233 return base64ewm;
234 }
235
236
237 /**
238 * 创建合同
239 * @param map
240 */
241 public ElecLicenseInfoDo createContract(Map map){
242 String url=hostUrl + "/contract/createbycategory";
243 ElecLicenseInfoDo elecLicenseInfo=null;
244 try{
245 String ywh = (String) map.get("YWH");
246 Map jsonMap = new HashMap();
247 jsonMap.put("sn", ywh);
248 jsonMap.put("send", "true");
249 jsonMap.put("creatorName", "");
250 jsonMap.put("creatorContact", "");
251 jsonMap.put("tenantName", "汉中市不动产登记交易服务中心");
252 String zsbh= (String) map.get("BH");//去掉汉字的证书编号,数字组合
253
254
255 Map<String, String> documentMap = new HashMap<String, String>();
256 String bdcqzh = (String) map.get("BDCQZH");
257 if (bdcqzh.contains("证明")) {
258 jsonMap.put("subject", "不动产登记证明");
259 jsonMap.put("categoryId", bdcdjzmlc);
260 List<String> ywrmcList=elecLicenseInfoMapper.getYwrMcByCOnditon(ywh,(String) map.get("BDCDYH"));
261 documentMap.put("bdczmh", zsbh);
262 documentMap.put("zmqlhsx",getzmsx((String) map.get("DJLX"),(String) map.get("BDCDYH")));
263 documentMap.put("ywr", StringUtils.join(ywrmcList.toArray(), ","));
264 documentMap.put("qt", map.get("QT")==null ? "无": (String) map.get("QT"));
265 } else {
266 jsonMap.put("subject", "不动产登记证书");
267 jsonMap.put("categoryId", bdcqzslc);
268
269 documentMap.put("bdcqzh",zsbh);
270 documentMap.put("gyqk", map.get("GYQK")==null ? "": (String) map.get("GYQK"));
271 documentMap.put("qllx", map.get("QLLX")==null ? "": (String) map.get("QLLX"));
272 documentMap.put("qlxz", map.get("QLXZ")==null ? "": (String) map.get("QLXZ"));
273 documentMap.put("yt", map.get("YT")==null ? "": (String) map.get("YT"));
274 documentMap.put("mj", map.get("MJ")==null ? "": (String) map.get("MJ"));
275 documentMap.put("syqx", map.get("SYQX")==null ? "": (String) map.get("SYQX"));
276 documentMap.put("qlqtzk", map.get("QLQTZK")==null ? "": (String) map.get("QLQTZK"));
277 }
278
279 List list2 = new ArrayList();
280 Map map2 = new HashMap();
281 map2.put("type", "CORPORATE");
282 map2.put("name", "汉中市不动产登记交易服务中心");
283 map2.put("serialNo", "1");
284 list2.add(map2);
285
286 List list1 = new ArrayList();
287 Map map1 = new HashMap();
288 map1.put("tenantType", "CORPORATE");
289 map1.put("tenantName", "汉中市不动产登记交易服务中心");
290 map1.put("serialNo", "1");
291 map1.put("actions", list2);
292 list1.add(map1);
293
294 jsonMap.put("signatories", list1);
295
296 documentMap.put("djsj", map.get("Y")==null ? "":(String) map.get("Y"));
297 documentMap.put("y", map.get("Y")==null ? "":(String) map.get("Y"));
298 documentMap.put("m", map.get("M")==null ? "":(String) map.get("M"));
299 documentMap.put("d", map.get("D")==null ? "":(String) map.get("D"));
300 documentMap.put("qlr", map.get("QLRMC")==null ? "":(String) map.get("QLRMC"));
301 documentMap.put("zl", map.get("ZL")==null ? "":(String) map.get("ZL"));
302 documentMap.put("bdcdyh", map.get("BDCDYH")==null ? "":(String) map.get("BDCDYH"));
303 documentMap.put("fj", "业务号:"+ywh);
304 documentMap.put("qx", "汉台区");
305
306 String base64ewm =getBase64ewm((String) map.get("ID"),(String) map.get("QLRMC"),(String) map.get("ZJH"));
307
308 Map ewmMap = new HashMap();
309 ewmMap.put("fileName", map.get("ID")+".png");
310 ewmMap.put("value", "data:image/png;base64,"+base64ewm);
311 documentMap.put("ewm", JSON.toJSONString(ewmMap));
312
313 List<Map> arryList = new ArrayList<Map>();
314 for (Map.Entry<String, String> entry : documentMap.entrySet()) {
315 convert(arryList, entry.getKey(), entry.getValue());
316 }
317
318 jsonMap.put("documentParams", arryList);
319 String inparam=JSON.toJSONString(jsonMap);
320
321 Map jsonObject =eciHttpUtil.doPostForNew(url, inparam);
322 elecLicenseInfo =new ElecLicenseInfoDo();
323 elecLicenseInfo.setYwh((String) map.get("YWH"));
324 elecLicenseInfo.setZsbs((String) map.get("ID"));
325 elecLicenseInfo.setZsbh(zsbh);
326 elecLicenseInfo.setZjh((String) map.get("ZJH"));
327 elecLicenseInfo =elecLicenseInfoMapper.getElecLicenseInfo(elecLicenseInfo);
328 if(elecLicenseInfo==null){
329 //电子证照表记录
330 elecLicenseInfo=insertEciInfo(inparam,JSON.toJSONString(documentMap),jsonObject,map);
331 }else{
332 elecLicenseInfo=updateEciInfo(inparam,JSON.toJSONString(documentMap),jsonObject,elecLicenseInfo);
333 }
334 }catch (Exception ex){
335 ex.printStackTrace();
336 }
337 return elecLicenseInfo;
338 }
339
340
341 public void convert(List arryList,String name,String value){
342 Map map=new HashMap();
343 map.put("name",name);
344 map.put("value",value);
345 arryList.add(map);
346 }
347
348 public ElecLicenseInfoDo accessDetails(ElecLicenseInfoDo waitForDetail) {
349 ElecLicenseInfoDo elecLicenseInfoDo=null;
350 try {
351 Long contractId = waitForDetail.getContractId();
352 String url = hostUrl+ "/contract/detail?contractId=" + contractId;
353 logger.info("请求合同详情接口url:" + url);
354
355 Map jsonObject = eciHttpUtil.doGetForNew(url);
356
357 if(jsonObject.isEmpty()){
358 waitForDetail.setErr_state("2");
359 }else{
360 Integer code = (Integer) jsonObject.get("code");
361 logger.info("合同详情接口请求结果:" + jsonObject);
362 if (code==0) {
363 Map obj1= (Map) jsonObject.get("contract");
364 List list= (List) obj1.get("documents");
365 Map map= (Map) list.get(0);
366 waitForDetail.setErr_state("0");
367 waitForDetail.setDocumentId((String) map.get("id"));
368 }else{
369 waitForDetail.setErr_state("2");
370 }
371 }
372 //文档ID入库
373 this.updateById(waitForDetail);
374
375 elecLicenseInfoDo=waitForDetail;
376
377 } catch (Exception e) {
378 e.printStackTrace();
379 }
380 return elecLicenseInfoDo;
381 }
382 /**
383 * 下载合同方法
384 * @return
385 */
386 public ElecLicenseInfoDo accessDownload(ElecLicenseInfoDo waitForDownload) {
387 ElecLicenseInfoDo downloadInfo=null;
388 try{
389 String documentId = waitForDownload.getDocumentId();
390 String bh=waitForDownload.getZsbh();
391 String ofdPath = eciHttpUtil.download(documentId,bh);
392 if (StringUtils.isNotBlank(ofdPath)) {
393 //入库ofd文件地址
394 waitForDownload.setSfxz("1");
395 waitForDownload.setOfdWjdz(ofdPath);
396 waitForDownload.setErr_state("0");
397 }else{
398 waitForDownload.setErr_state("3");
399 }
400 this.updateById(waitForDownload);
401 downloadInfo=waitForDownload;
402 }catch (Exception ex){
403 ex.printStackTrace();
404 }
405 return downloadInfo;
406 }
407
408 public ElecLicenseInfoDo convertElec(ElecLicenseInfoDo waitForConvert) {
409 //转换后文件输出路径
410 ElecLicenseInfoDo convert=null;
411 try {
412 String ofdPath = waitForConvert.getOfdWjdz();
413 String id=waitForConvert.getDocumentId();
414 String bh=waitForConvert.getZsbh();
415 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy");
416 String dateDir = simpleDateFormat.format(new Date());
417 String url=ofdToImg(ofdPath,"D:\\ECI\\"+ dateDir+bh+"\\",id);
418 if(StringUtils.isNotBlank(url)){
419 waitForConvert.setSfzh("1");
420 waitForConvert.setJpgWjdz(url);
421 waitForConvert.setErr_state("0");
422 }else{
423 waitForConvert.setErr_state("4");
424 }
425 this.updateById(waitForConvert);
426 convert=waitForConvert;
427
428 } catch (Exception e) {
429 e.printStackTrace();
430 }
431 return convert;
432 }
433
434 /**
435 * 将ofd转换为图片
436 * @param
437 * @param imgPath 目标文件路径
438 */
439 public String ofdToImg(String ofdPath, String imgPath,String id) {
440 File savePath = new File(imgPath);
441 if (!savePath.exists()) {
442 savePath.mkdirs();
443 }
444 // 1. 文件输入路径
445 Path src = Paths.get(ofdPath);
446 // 2. 加载指定目录字体(非必须)
447 // FontLoader.getInstance().scanFontDir(new File("src/test/resources/fonts"));
448 // 3. 创建转换转换对象,设置 每毫米像素数量(Pixels per millimeter)
449 try(OFDReader reader = new OFDReader(src);) {
450 ImageMaker imageMaker = new ImageMaker(reader, 15);
451 for (int i = 0; i < imageMaker.pageSize(); i++) {
452 // 4. 指定页码转换图片
453 BufferedImage image = imageMaker.makePage(i);
454 Path dist = Paths.get( imgPath+ id + ".jpg");
455 // 5. 存储为指定格式图片
456 ImageIO.write(image, "JPG", dist.toFile());
457 return imgPath + id + ".jpg";
458 }
459 } catch (IOException e) {
460 e.printStackTrace();
461 }
462 return "";
463 }
464
465 /**
466 *根据缮证类型决定生成对应的权利相关信息
467 */
468 public List<Map> assemblyInfo(){
469 List<Map> oldlist=regBusBdcqzsdjxxMapper.getBdcqzsjbxxInfo();
470 List<Map> list=new ArrayList<Map>();
471 if(oldlist!=null && oldlist.size()>0){
472 for (int i = 0; i < oldlist.size(); i++) {
473 Map map=oldlist.get(i);
474 String bh= (String)map.get("BH");
475 String zsbh[]=bh.split(",");
476 if(zsbh!=null && zsbh.length>0){
477 String qlqtzk=(String)map.get("QLQTZK");
478 Map qrlInfoMap=regBusBdcqzsdjxxMapper.getQlrInfoByYwh((String) map.get("YWH"));
479 String allQlrmc=(String)qrlInfoMap.get("QLRMC");
480 String allZjh=(String)qrlInfoMap.get("ZJH");
481 if(StringUtils.isNotBlank(allQlrmc)){
482 for (int k = 0; k < zsbh.length; k++) {
483 String qlr[]=allQlrmc.split(",");
484 String zjh[]=allZjh.split(",");
485 Map hashMap=new HashMap(map);
486 hashMap.put("QLRMC",qlr[k]);
487 hashMap.put("BH",zsbh[k]);
488 hashMap.put("ZJH",zjh[k]);
489 List list1= Arrays.asList(qlr);
490 List arrList = new ArrayList(list1);
491 arrList.remove(qlr[k]);
492 String gyr=StringUtils.join(arrList.toArray(),",");
493 if(StringUtils.isNotBlank(qlqtzk)){
494 qlqtzk=qlqtzk.substring(0, qlqtzk.length() - 1);
495 hashMap.put("QLQTZK",qlqtzk+hashMap.get("GYQK")+";共有人:"+gyr);
496 }
497 list.add(hashMap);
498 }
499 }
500 }
501 }
502 }
503 return list;
504 }
505
506 /**
507 * 手动版创建合同组件信息
508 * @return
509 */
510 public List<Map> createInfoByHandle(String zsbs,String qlrzjh,String bh){
511 List<Map> list=new ArrayList<Map>();
512 Map map=regBusBdcqzsdjxxMapper.getBdcqzsJbxxById(zsbs);
513 if(map!=null){
514 Map qrlInfoMap=regBusBdcqzsdjxxMapper.getQlrInfoByYwh((String) map.get("YWH"));
515 String allQlrmc=(String)qrlInfoMap.get("QLRMC");
516 if(StringUtils.isNotBlank(allQlrmc)){
517 String allZjh=(String)qrlInfoMap.get("ZJH");
518 if(StringUtils.isNotBlank(allZjh)){
519 String zjh[]=allZjh.split(",");
520 String qlqtzk=(String)map.get("QLQTZK");
521 for (int k = 0; k < zjh.length; k++) {
522 if(StringUtils.equals(qlrzjh,zjh[k])){
523 String qlr[]=allQlrmc.split(",");
524 Map hashMap=new HashMap(map);
525 hashMap.put("QLRMC",qlr[k]);
526 hashMap.put("BH",bh);
527 hashMap.put("ZJH",qlrzjh);
528 List list1= Arrays.asList(qlr);
529 List arrList = new ArrayList(list1);
530 arrList.remove(qlr[k]);
531 String gyr=StringUtils.join(arrList.toArray(),",");
532 if(StringUtils.isNotBlank(qlqtzk)){
533 qlqtzk=qlqtzk.substring(0, qlqtzk.length() - 1);
534 hashMap.put("QLQTZK",qlqtzk+hashMap.get("GYQK")+";共有人:"+gyr);
535 }
536 list.add(hashMap);
537 }
538 }
539 }
540 }
541 }
542 return list;
543 }
544
545
546
547 public String getzmsx(String djxl,String bdcdyh){
548 //证明权利或事项
549 if(djxl.equals("214") || djxl.equals("215")
550 || djxl.equals("213") || djxl.equals("209")
551 || djxl.equals("315") || djxl.equals("605")
552 || djxl.equals("430") || djxl.equals("316")
553 || djxl.equals("606") || djxl.equals("431")
554 || djxl.equals("427") || djxl.equals("428")
555 || djxl.equals("317") || djxl.equals("318")
556 || djxl.equals("608") || djxl.equals("433")
557 || djxl.equals("422") || djxl.equals("217")){
558 if(djxl.equals("213") || djxl.equals("316")
559 || djxl.equals("606") || djxl.equals("431")
560 || djxl.equals("427") || djxl.equals("428")){
561 return "在建工程抵押权";
562 }else {
563 return "抵押权";
564 }
565 }else {
566 //预抵押变更事项可以修改期房和现房的预抵押所以应取上一笔的预抵押信息,获取上一笔抵押登记小类
567 if (djxl.equals("818") || djxl.equals("607")
568 || djxl.equals("432")){
569 Map rightsInfo= regBusBdcqzsdjxxMapper.getRightsInfo(bdcdyh);
570 if(rightsInfo!=null){
571 return regBusBdcqzsdjxxMapper.getInfoByValue((String) rightsInfo.get("REMARKS"),"reg_bus_djxl");
572 }
573 }else {
574 if(djxl.equals("609") || djxl.equals("812") || djxl.equals("809") || djxl.equals("810") || djxl.equals("811")){
575 return regBusBdcqzsdjxxMapper.getInfoByValue("803","reg_bus_djxl");
576 }else{
577 return regBusBdcqzsdjxxMapper.getInfoByValue(djxl,"reg_bus_djxl");
578 }
579 }
580 }
581 return "";
582 }
583
584
585 }
1 package com.pashanhoo.receive.controller;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.receive.entity.vo.AddDgReceiveRequest;
5 import com.pashanhoo.receive.entity.vo.DgReceiveSearchRequest;
6 import com.pashanhoo.receive.service.DgReceiveService;
7 import io.swagger.annotations.Api;
8 import io.swagger.annotations.ApiOperation;
9 import io.swagger.annotations.ApiParam;
10 import org.springframework.beans.factory.annotation.Autowired;
11 import org.springframework.validation.BindingResult;
12 import org.springframework.web.bind.annotation.*;
13
14 import javax.validation.Valid;
15 import java.util.List;
16
17 /**
18 * <p>
19 * 档案接收记录 前端控制器
20 * </p>
21 *
22 * @author
23 * @since 2021-11-05
24 */
25 @RestController
26 @RequestMapping("/system/dgReceive/")
27 @Api(tags = "档案接收记录接口")
28 public class DgReceiveController {
29 @Autowired
30 private DgReceiveService dgreceiveService;
31
32 @PostMapping("insertDgReceive")
33 @ApiOperation("新增接收记录接口")
34 public Result insertDgReceive(@Valid @RequestBody AddDgReceiveRequest request, BindingResult bindingResult) {
35 if (bindingResult.hasErrors()){
36 return Result.checkError(bindingResult.getAllErrors().get(0).getDefaultMessage());
37 }
38 try {
39 dgreceiveService.insertDgReceive(request);
40 }catch (Exception ex){
41 return Result.error(ex.getMessage());
42 }
43 return Result.ok();
44 }
45 @PostMapping("search")
46 @ApiOperation(value = "根据条件进行列表查询")
47 public Result searchDgReceiveList(@RequestBody DgReceiveSearchRequest request) {
48 return dgreceiveService.searchDgReceiveList(request);
49 }
50 @PostMapping("addBatchArchies")
51 @ApiOperation("批量归档")
52 public Result addBatchArchies(@ApiParam("接收记录ID列表") @RequestParam(value = "idList") List<String> idList){
53 return dgreceiveService.addBatchArchies(idList);
54 }
55
56
57
58
59
60 }
1 package com.pashanhoo.receive.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.receive.entity.vo.AddDgReceiveRequest;
6 import com.pashanhoo.receive.entity.vo.DgReceiveDetailVO;
7 import com.pashanhoo.receive.entity.vo.DgReceiveListVO;
8 import com.pashanhoo.receive.entity.vo.UpdateDgReceiveRequest;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgReceiveConverter{
17 DgReceiveDO addRequest2DO(AddDgReceiveRequest request);
18
19 DgReceiveDetailVO do2DetailVO(DgReceiveDO dgreceiveDO);
20
21 DgReceiveDO updateRequest2DO(UpdateDgReceiveRequest request);
22
23 DgReceiveListVO do2ListVO(DgReceiveDO dgreceiveDO);
24
25 List<DgReceiveListVO> doList2ListVOList(List<DgReceiveDO> dgreceiveDOList);
26 }
1 package com.pashanhoo.receive.entity;
2
3 import java.math.BigDecimal;
4 import com.baomidou.mybatisplus.annotation.TableName;
5 import com.baomidou.mybatisplus.annotation.IdType;
6 import java.util.Date;
7 import com.baomidou.mybatisplus.annotation.TableId;
8 import com.baomidou.mybatisplus.annotation.TableField;
9 import java.io.Serializable;
10 import lombok.Data;
11 import lombok.EqualsAndHashCode;
12
13 /**
14 * <p>
15 * 档案接收记录
16 * </p>
17 *
18 * @author
19 * @since 2021-11-05
20 */
21 @Data
22 @EqualsAndHashCode(callSuper = false)
23 @TableName("DG_RECEIVE")
24 public class DgReceiveDO implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 接收标识码
30 */
31 @TableId(value = "BMS_RECEIVE", type = IdType.UUID)
32 private String bmsReceive;
33
34 /**
35 * 业务来源编码
36 */
37 @TableField("YWLYJBM")
38 private String ywlyjbm;
39
40 /**
41 * 权利类型
42 */
43 @TableField("QLLX")
44 private String qllx;
45
46 /**
47 * 登记类型
48 */
49 @TableField("DJLX")
50 private String djlx;
51
52 /**
53 * 收件人员
54 */
55 @TableField("SJRY")
56 private String sjry;
57
58 /**
59 * 收件时间
60 */
61 @TableField("SJSJ")
62 private Date sjsj;
63
64 /**
65 * 业务号
66 */
67 @TableField("YWH")
68 private String ywh;
69
70 /**
71 * 不动产单元号
72 */
73 @TableField("BDCDYH")
74 private String bdcdyh;
75
76 /**
77 * 单元总数
78 */
79 @TableField("DYZS")
80 private BigDecimal dyzs;
81
82 /**
83 * 不动产权证号
84 */
85 @TableField("BDCQZH")
86 private String bdcqzh;
87
88 /**
89 * 权利人
90 */
91 @TableField("QLR")
92 private String qlr;
93
94 /**
95 * 权利人证件号码
96 */
97 @TableField("ZJHM")
98 private String zjhm;
99
100 /**
101 * 义务人
102 */
103 @TableField("YWR")
104 private String ywr;
105
106 /**
107 * 坐落
108 */
109 @TableField("ZL")
110 private String zl;
111
112 /**
113 * 登记时间
114 */
115 @TableField("DJSJ")
116 private Date djsj;
117
118 /**
119 * 接收时间
120 */
121 @TableField("JSSJ")
122 private Date jssj;
123
124 /**
125 * 推送机构编码
126 */
127 @TableField("TSJGBM")
128 private String tsjgbm;
129
130 /**
131 * 归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)
132 */
133 @TableField("GDFS")
134 private String gdfs;
135
136 /**
137 * 归档时间
138 */
139 @TableField("GDSJ")
140 private Date gdsj;
141
142 /**
143 * 整理状态(0:待处理,1:已归档)
144 */
145 @TableField("STATE")
146 private String state;
147 /**
148 * 登记业务编码
149 */
150 @TableField("DJYWBM")
151 private String djywbm;
152 /**
153 * 登记业务名称
154 */
155 @TableField("DJYWMC")
156 private String djywmc;
157 /**
158 * 业务标识码
159 */
160 @TableField("BSM_YW")
161 private String bsm_yw;
162
163 }
1 package com.pashanhoo.receive.entity.vo;
2
3 import java.math.BigDecimal;
4 import java.util.Date;
5 import java.io.Serializable;
6 import java.util.List;
7
8 import com.pashanhoo.bdcdy.entity.vo.AddDgBdcdyRequest;
9 import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
10 import com.pashanhoo.catalog.entity.vo.AddDgArchivesCatalogRequest;
11 import io.swagger.annotations.ApiModel;
12 import io.swagger.annotations.ApiModelProperty;
13 import lombok.Data;
14 import lombok.EqualsAndHashCode;
15 import org.springframework.format.annotation.DateTimeFormat;
16
17 import javax.validation.constraints.NotEmpty;
18
19 /**
20 * <p>
21 * 档案接收记录新增请求实体
22 * </p>
23 *
24 * @author
25 * @since 2021-11-05
26 */
27 @Data
28 @EqualsAndHashCode(callSuper = false)
29 @ApiModel(value="档案接收记录新增请求实体")
30 public class AddDgReceiveRequest implements Serializable {
31
32 private static final long serialVersionUID = 1L;
33 /**
34 * 主键
35 */
36 @ApiModelProperty(name = "bms_receive", value = "主键")
37 private String bms_receive;
38 /**
39 * 业务来源编码
40 */
41 @NotEmpty(message = "业务来源编码【ywlyjbm】不能为空")
42 @ApiModelProperty(name = "ywlyjbm", value = "业务来源编码")
43 private String ywlyjbm;
44 /**
45 * 权利类型
46 */
47 @NotEmpty(message = "权利类型【qllx】不能为空")
48 @ApiModelProperty(name = "qllx", value = "权利类型")
49 private String qllx;
50 /**
51 * 登记类型
52 */
53 @NotEmpty(message = "登记类型【djlx】不能为空")
54 @ApiModelProperty(name = "djlx", value = "登记类型")
55 private String djlx;
56 /**
57 * 收件人员
58 */
59 @NotEmpty(message = "收件人员【sjry】不能为空")
60 @ApiModelProperty(name = "sjry", value = "收件人员")
61 private String sjry;
62 /**
63 * 收件时间
64 */
65 @NotEmpty(message = "收件时间【sjsj】不能为空")
66 @ApiModelProperty(name = "sjsj", value = "收件时间")
67 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
68 private Date sjsj;
69 /**
70 * 业务号
71 */
72 @NotEmpty(message = "业务号【ywh】不能为空")
73 @ApiModelProperty(name = "ywh", value = "业务号")
74 private String ywh;
75 /**
76 * 不动产单元号
77 */
78 @NotEmpty(message = "不动产单元号【bdcdyh】不能为空")
79 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
80 private String bdcdyh;
81 /**
82 * 单元总数
83 */
84 @NotEmpty(message = "单元总数【dyzs】不能为空")
85 @ApiModelProperty(name = "dyzs", value = "单元总数")
86 private Integer dyzs;
87 /**
88 * 不动产权证号
89 */
90 @NotEmpty(message = "不动产权证号【bdcqzh】不能为空")
91 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
92 private String bdcqzh;
93 /**
94 * 权利人
95 */
96 @NotEmpty(message = "权利人【qlr】不能为空")
97 @ApiModelProperty(name = "qlr", value = "权利人")
98 private String qlr;
99 /**
100 * 权利人证件号码
101 */
102 @NotEmpty(message = "权利人证件号码【zjhm】不能为空")
103 @ApiModelProperty(name = "zjhm", value = "权利人证件号码")
104 private String zjhm;
105 /**
106 * 义务人
107 */
108 @ApiModelProperty(name = "ywr", value = "义务人")
109 private String ywr;
110 /**
111 * 坐落
112 */
113 @NotEmpty(message = "坐落【zl】不能为空")
114 @ApiModelProperty(name = "zl", value = "坐落")
115 private String zl;
116 /**
117 * 登记时间
118 */
119 @NotEmpty(message = "登记时间【djsj】不能为空")
120 @ApiModelProperty(name = "djsj", value = "登记时间")
121 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
122 private Date djsj;
123 /**
124 * 接收时间
125 */
126 @NotEmpty(message = "接收时间【jssj】不能为空")
127 @ApiModelProperty(name = "jssj", value = "接收时间")
128 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
129 private Date jssj;
130 /**
131 * 推送机构编码
132 */
133 @NotEmpty(message = "推送机构编码【tsjgbm】不能为空")
134 @ApiModelProperty(name = "tsjgbm", value = "推送机构编码")
135 private String tsjgbm;
136 /**
137 * 登记业务编码
138 */
139 @NotEmpty(message = "登记业务编码【djywbm】不能为空")
140 @ApiModelProperty(name = "djywbm", value = "登记业务编码")
141 private String djywbm;
142 /**
143 * 登记业务名称
144 */
145 @NotEmpty(message = "登记业务名称【djywmc】不能为空")
146 @ApiModelProperty(name = "djywmc", value = "登记业务名称")
147 private String djywmc;
148 /**
149 * 业务标识码
150 */
151 @NotEmpty(message = "业务标识码【bsm_yw】不能为空")
152 @ApiModelProperty(name = "bsm_yw", value = "业务标识码")
153 private String bsm_yw;
154
155 /**
156 * 推送业务信息
157 */
158 @ApiModelProperty(name = "businessRequest", value = "推送业务信息")
159 private AddDgBusinessRequest businessRequest;
160 /**
161 * 不动产单元信息
162 */
163 @ApiModelProperty(name = "businessRequest", value = "推送不动产单元信息")
164 private List<AddDgBdcdyRequest> bdcdyRequestList;
165 /**
166 * 目录信息列表
167 */
168 @ApiModelProperty(name = "catalogRequests", value = "推送目录信息列表")
169 private List<AddDgArchivesCatalogRequest> catalogRequests;
170
171
172
173
174
175 }
1 package com.pashanhoo.receive.entity.vo;
2
3 import java.math.BigDecimal;
4 import java.util.Date;
5 import java.io.Serializable;
6 import io.swagger.annotations.ApiModel;
7 import io.swagger.annotations.ApiModelProperty;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10 import org.springframework.format.annotation.DateTimeFormat;
11
12 /**
13 * <p>
14 * 档案接收记录明细实体
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @ApiModel(value="档案接收记录明细实体")
23 public class DgReceiveDetailVO implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 接收标识码
29 */
30 @ApiModelProperty(name = "bmsReceive", value = "接收标识码")
31 private String bmsReceive;
32
33 /**
34 * 业务来源编码
35 */
36 @ApiModelProperty(name = "ywlyjbm", value = "业务来源编码")
37 private String ywlyjbm;
38
39 /**
40 * 权利类型
41 */
42 @ApiModelProperty(name = "qllx", value = "权利类型")
43 private String qllx;
44
45 /**
46 * 登记类型
47 */
48 @ApiModelProperty(name = "djlx", value = "登记类型")
49 private String djlx;
50
51 /**
52 * 收件人员
53 */
54 @ApiModelProperty(name = "sjry", value = "收件人员")
55 private String sjry;
56
57 /**
58 * 收件时间
59 */
60 @ApiModelProperty(name = "sjsj", value = "收件时间")
61 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
62 private Date sjsj;
63
64 /**
65 * 业务号
66 */
67 @ApiModelProperty(name = "ywh", value = "业务号")
68 private String ywh;
69
70 /**
71 * 不动产单元号
72 */
73 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
74 private String bdcdyh;
75
76 /**
77 * 单元总数
78 */
79 @ApiModelProperty(name = "dyzs", value = "单元总数")
80 private Integer dyzs;
81
82 /**
83 * 不动产权证号
84 */
85 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
86 private String bdcqzh;
87
88 /**
89 * 权利人
90 */
91 @ApiModelProperty(name = "qlr", value = "权利人")
92 private String qlr;
93
94 /**
95 * 权利人证件号码
96 */
97 @ApiModelProperty(name = "zjhm", value = "权利人证件号码")
98 private String zjhm;
99
100 /**
101 * 义务人
102 */
103 @ApiModelProperty(name = "ywr", value = "义务人")
104 private String ywr;
105
106 /**
107 * 坐落
108 */
109 @ApiModelProperty(name = "zl", value = "坐落")
110 private String zl;
111
112 /**
113 * 登记时间
114 */
115 @ApiModelProperty(name = "djsj", value = "登记时间")
116 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
117 private Date djsj;
118
119 /**
120 * 接收时间
121 */
122 @ApiModelProperty(name = "jssj", value = "接收时间")
123 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
124 private Date jssj;
125
126 /**
127 * 推送机构编码
128 */
129 @ApiModelProperty(name = "tsjgbm", value = "推送机构编码")
130 private String tsjgbm;
131
132 /**
133 * 归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)
134 */
135 @ApiModelProperty(name = "gdfs", value = "归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)")
136 private String gdfs;
137
138 /**
139 * 归档时间
140 */
141 @ApiModelProperty(name = "gdsj", value = "归档时间")
142 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
143 private Date gdsj;
144
145 /**
146 * 整理状态(0:待处理,1:已归档)
147 */
148 @ApiModelProperty(name = "state", value = "整理状态(0:待处理,1:已归档)")
149 private String state;
150
151
152 }
1 package com.pashanhoo.receive.entity.vo;
2
3 import java.math.BigDecimal;
4 import java.util.Date;
5 import java.io.Serializable;
6 import io.swagger.annotations.ApiModel;
7 import io.swagger.annotations.ApiModelProperty;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10 import org.springframework.format.annotation.DateTimeFormat;
11
12 /**
13 * <p>
14 * 档案接收记录列表VO
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @ApiModel(value="档案接收记录列表VO")
23 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
24 public class DgReceiveListVO implements Serializable {
25
26 private static final long serialVersionUID = 1L;
27
28 /**
29 * 接收标识码
30 */
31 @ApiModelProperty(name = "bmsReceive", value = "接收标识码")
32 private String bmsReceive;
33
34 /**
35 * 业务来源编码
36 */
37 @ApiModelProperty(name = "ywlyjbm", value = "业务来源编码")
38 private String ywlyjbm;
39
40 /**
41 * 权利类型
42 */
43 @ApiModelProperty(name = "qllx", value = "权利类型")
44 private String qllx;
45
46 /**
47 * 登记类型
48 */
49 @ApiModelProperty(name = "djlx", value = "登记类型")
50 private String djlx;
51
52 /**
53 * 收件人员
54 */
55 @ApiModelProperty(name = "sjry", value = "收件人员")
56 private String sjry;
57
58 /**
59 * 收件时间
60 */
61 @ApiModelProperty(name = "sjsj", value = "收件时间")
62 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
63 private Date sjsj;
64
65 /**
66 * 业务号
67 */
68 @ApiModelProperty(name = "ywh", value = "业务号")
69 private String ywh;
70
71 /**
72 * 不动产单元号
73 */
74 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
75 private String bdcdyh;
76
77 /**
78 * 单元总数
79 */
80 @ApiModelProperty(name = "dyzs", value = "单元总数")
81 private Integer dyzs;
82
83 /**
84 * 不动产权证号
85 */
86 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
87 private String bdcqzh;
88
89 /**
90 * 权利人
91 */
92 @ApiModelProperty(name = "qlr", value = "权利人")
93 private String qlr;
94
95 /**
96 * 权利人证件号码
97 */
98 @ApiModelProperty(name = "zjhm", value = "权利人证件号码")
99 private String zjhm;
100
101 /**
102 * 义务人
103 */
104 @ApiModelProperty(name = "ywr", value = "义务人")
105 private String ywr;
106
107 /**
108 * 坐落
109 */
110 @ApiModelProperty(name = "zl", value = "坐落")
111 private String zl;
112
113 /**
114 * 登记时间
115 */
116 @ApiModelProperty(name = "djsj", value = "登记时间")
117 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
118 private Date djsj;
119
120 /**
121 * 接收时间
122 */
123 @ApiModelProperty(name = "jssj", value = "接收时间")
124 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
125 private Date jssj;
126
127 /**
128 * 推送机构编码
129 */
130 @ApiModelProperty(name = "tsjgbm", value = "推送机构编码")
131 private String tsjgbm;
132
133 /**
134 * 归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)
135 */
136 @ApiModelProperty(name = "gdfs", value = "归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)")
137 private String gdfs;
138
139 /**
140 * 归档时间
141 */
142 @ApiModelProperty(name = "gdsj", value = "归档时间")
143 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
144 private Date gdsj;
145
146 /**
147 * 整理状态(0:待处理,1:已归档)
148 */
149 @ApiModelProperty(name = "state", value = "整理状态(0:待处理,1:已归档)")
150 private String state;
151
152
153 }
1 package com.pashanhoo.receive.entity.vo;
2
3 import com.pashanhoo.common.PageInfo;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 import java.io.Serializable;
10
11 /**
12 * <p>
13 * 档案接收记录列表查询请求实体
14 * </p>
15 *
16 * @author
17 * @since 2021-11-05
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @ApiModel(value="档案接收记录列表查询请求实体")
22 public class DgReceiveSearchRequest extends PageInfo implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25 /**
26 * 业务号
27 */
28 @ApiModelProperty(name = "ywh", value = "业务号")
29 private String ywh;
30 /**
31 * 权利类型
32 */
33 @ApiModelProperty(name = "qllx", value = "权利类型")
34 private String qllx;
35 /**
36 * 登记类型
37 */
38 @ApiModelProperty(name = "djlx", value = "登记类型")
39 private String djlx;
40 /**
41 * 业务来源编码
42 */
43 @ApiModelProperty(name = "ywlyjbm", value = "业务来源编码")
44 private String ywlyjbm;
45
46
47
48
49
50
51 }
1 package com.pashanhoo.receive.entity.vo;
2
3 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7
8 import java.io.Serializable;
9 @Data
10 @EqualsAndHashCode(callSuper = false)
11 @ApiModel(value="登记业务编码请求实体")
12 public class DjywbmVO implements Serializable {
13
14 private static final long serialVersionUID = 1L;
15
16 /**
17 * 原登记业务编码
18 */
19 @ApiModelProperty(name = "oncedjywbm", value = "原登记业务编码")
20 private String oncedjywbm;
21 /**
22 * 原登记业务名称
23 */
24 @ApiModelProperty(name = "oncedjywmc", value = "原登记业务名称")
25 private String oncedjywmc;
26 /**
27 * 登记业务编码
28 */
29 @ApiModelProperty(name = "djywbm", value = "登记业务编码")
30 private String djywbm;
31 /**
32 * 登记业务名称
33 */
34 @ApiModelProperty(name = "djywmc", value = "登记业务名称")
35 private String djywmc;
36 /**
37 * 状态
38 */
39 @ApiModelProperty(name = "state", value = "状态")
40 private String state;
41 /**
42 * 归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)
43 */
44 @ApiModelProperty(name = "gdfs", value = "归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)")
45 private String gdfs;
46
47 }
1 package com.pashanhoo.receive.entity.vo;
2
3 import java.math.BigDecimal;
4 import java.util.Date;
5 import java.io.Serializable;
6 import io.swagger.annotations.ApiModel;
7 import io.swagger.annotations.ApiModelProperty;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10 import org.springframework.format.annotation.DateTimeFormat;
11
12 /**
13 * <p>
14 * 档案接收记录修改请求实体
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 @Data
21 @EqualsAndHashCode(callSuper = false)
22 @ApiModel(value="档案接收记录修改请求实体")
23 public class UpdateDgReceiveRequest implements Serializable {
24
25 private static final long serialVersionUID = 1L;
26
27 /**
28 * 接收标识码
29 */
30 @ApiModelProperty(name = "bmsReceive", value = "接收标识码")
31 private String bmsReceive;
32
33 /**
34 * 业务来源编码
35 */
36 @ApiModelProperty(name = "ywlyjbm", value = "业务来源编码")
37 private String ywlyjbm;
38
39 /**
40 * 权利类型
41 */
42 @ApiModelProperty(name = "qllx", value = "权利类型")
43 private String qllx;
44
45 /**
46 * 登记类型
47 */
48 @ApiModelProperty(name = "djlx", value = "登记类型")
49 private String djlx;
50
51 /**
52 * 收件人员
53 */
54 @ApiModelProperty(name = "sjry", value = "收件人员")
55 private String sjry;
56
57 /**
58 * 收件时间
59 */
60 @ApiModelProperty(name = "sjsj", value = "收件时间")
61 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
62 private Date sjsj;
63
64 /**
65 * 业务号
66 */
67 @ApiModelProperty(name = "ywh", value = "业务号")
68 private String ywh;
69
70 /**
71 * 不动产单元号
72 */
73 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
74 private String bdcdyh;
75
76 /**
77 * 单元总数
78 */
79 @ApiModelProperty(name = "dyzs", value = "单元总数")
80 private Integer dyzs;
81
82 /**
83 * 不动产权证号
84 */
85 @ApiModelProperty(name = "bdcqzh", value = "不动产权证号")
86 private String bdcqzh;
87
88 /**
89 * 权利人
90 */
91 @ApiModelProperty(name = "qlr", value = "权利人")
92 private String qlr;
93
94 /**
95 * 权利人证件号码
96 */
97 @ApiModelProperty(name = "zjhm", value = "权利人证件号码")
98 private String zjhm;
99
100 /**
101 * 义务人
102 */
103 @ApiModelProperty(name = "ywr", value = "义务人")
104 private String ywr;
105
106 /**
107 * 坐落
108 */
109 @ApiModelProperty(name = "zl", value = "坐落")
110 private String zl;
111
112 /**
113 * 登记时间
114 */
115 @ApiModelProperty(name = "djsj", value = "登记时间")
116 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
117 private Date djsj;
118
119 /**
120 * 接收时间
121 */
122 @ApiModelProperty(name = "jssj", value = "接收时间")
123 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
124 private Date jssj;
125
126 /**
127 * 推送机构编码
128 */
129 @ApiModelProperty(name = "tsjgbm", value = "推送机构编码")
130 private String tsjgbm;
131
132 /**
133 * 归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)
134 */
135 @ApiModelProperty(name = "gdfs", value = "归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)")
136 private String gdfs;
137
138 /**
139 * 归档时间
140 */
141 @ApiModelProperty(name = "gdsj", value = "归档时间")
142 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
143 private Date gdsj;
144
145 /**
146 * 整理状态(0:待处理,1:已归档)
147 */
148 @ApiModelProperty(name = "state", value = "整理状态(0:待处理,1:已归档)")
149 private String state;
150
151
152 }
1 package com.pashanhoo.receive.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.receive.entity.DgReceiveDO;
5 import com.pashanhoo.receive.entity.vo.DjywbmVO;
6 import org.apache.ibatis.annotations.Param;
7
8 import java.util.List;
9
10 /**
11 * <p>
12 * 档案接收记录 Mapper 接口
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 public interface DgReceiveMapper extends BaseMapper<DgReceiveDO> {
19
20 boolean updateReceiveBatch(@Param("idList") List<String> idList,@Param("state") String state);
21
22 DjywbmVO getDjywbmInfo(@Param("oncedjywbm") String oncedjywbm);
23
24
25 }
1 package com.pashanhoo.receive.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.common.Result;
5 import com.pashanhoo.receive.entity.DgReceiveDO;
6 import com.pashanhoo.receive.entity.vo.AddDgReceiveRequest;
7 import com.pashanhoo.receive.entity.vo.DgReceiveDetailVO;
8 import com.pashanhoo.receive.entity.vo.UpdateDgReceiveRequest;
9 import com.pashanhoo.receive.entity.vo.DgReceiveSearchRequest;
10 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
11
12 import java.util.List;
13
14 /**
15 * <p>
16 * 档案接收记录 服务类
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 public interface DgReceiveService extends IService<DgReceiveDO> {
23
24
25 /**
26 * 根据条件进行列表查询
27 * @param request
28 * @return
29 */
30 Result searchDgReceiveList(DgReceiveSearchRequest request);
31 /**
32 * 批量归档
33 * @param idList
34 * @return
35 */
36 Result addBatchArchies(List<String> idList);
37 /**
38 * 新增接收记录接口
39 * @param request
40 * @return
41 */
42 Result insertDgReceive(AddDgReceiveRequest request) throws Exception;
43
44
45
46
47 }
1 package com.pashanhoo.receive.service.impl;
2
3 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
5 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 import com.pashanhoo.archive.entity.DgArchivesConverter;
8 import com.pashanhoo.archive.entity.DgArchivesDO;
9 import com.pashanhoo.archive.entity.vo.AddDgArchivesRequest;
10 import com.pashanhoo.archive.mapper.DgArchivesMapper;
11 import com.pashanhoo.archive.service.DgArchivesService;
12 import com.pashanhoo.bdcdy.entity.DgBdcdyConverter;
13 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
14 import com.pashanhoo.bdcdy.entity.vo.AddDgBdcdyRequest;
15 import com.pashanhoo.bdcdy.entity.vo.UpdateDgBdcdyRequest;
16 import com.pashanhoo.bdcdy.service.DgBdcdyService;
17 import com.pashanhoo.business.entity.DgBusinessDO;
18 import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
19 import com.pashanhoo.business.entity.vo.DgBusinessSearchRequest;
20 import com.pashanhoo.business.mapper.DgBusinessMapper;
21 import com.pashanhoo.business.service.DgBusinessService;
22 import com.pashanhoo.catalog.entity.DgArchivesCatalogConverter;
23 import com.pashanhoo.catalog.entity.DgArchivesCatalogDO;
24 import com.pashanhoo.catalog.entity.vo.AddDgArchivesCatalogRequest;
25 import com.pashanhoo.catalog.service.DgArchivesCatalogService;
26 import com.pashanhoo.common.Result;
27 import com.pashanhoo.common.util.fileupload.MinioUtil;
28 import com.pashanhoo.file.entity.DgFileConverter;
29 import com.pashanhoo.file.entity.DgFileDO;
30 import com.pashanhoo.file.entity.vo.FileAttribute;
31 import com.pashanhoo.file.service.DgFileService;
32 import com.pashanhoo.receive.entity.DgReceiveConverter;
33 import com.pashanhoo.receive.entity.DgReceiveDO;
34 import com.pashanhoo.receive.entity.vo.AddDgReceiveRequest;
35 import com.pashanhoo.receive.entity.vo.DgReceiveListVO;
36 import com.pashanhoo.receive.entity.vo.DgReceiveSearchRequest;
37 import com.pashanhoo.receive.entity.vo.DjywbmVO;
38 import com.pashanhoo.receive.mapper.DgReceiveMapper;
39 import com.pashanhoo.receive.service.DgReceiveService;
40 import com.pashanhoo.receiverelation.entity.DgReceiveRelationConverter;
41 import com.pashanhoo.receiverelation.entity.DgReceiveRelationDO;
42 import com.pashanhoo.receiverelation.entity.vo.AddDgReceiveRelationRequest;
43 import com.pashanhoo.receiverelation.service.DgReceiveRelationService;
44 import org.springframework.beans.factory.annotation.Autowired;
45 import org.springframework.stereotype.Service;
46 import org.springframework.transaction.annotation.Transactional;
47 import org.springframework.util.Assert;
48
49 import java.io.File;
50 import java.io.FileInputStream;
51 import java.io.InputStream;
52 import java.util.ArrayList;
53 import java.util.Date;
54 import java.util.List;
55
56 /**
57 * <p>
58 * 档案接收记录 服务实现类
59 * </p>
60 *
61 * @author
62 * @since 2021-11-05
63 */
64 @Service
65 public class DgReceiveServiceImpl extends ServiceImpl<DgReceiveMapper, DgReceiveDO> implements DgReceiveService {
66
67 @Autowired
68 private DgReceiveConverter dgreceiveConverter;
69 @Autowired
70 private DgBdcdyConverter bdcdyConverter;
71 @Autowired
72 private DgReceiveMapper dgreceiveMapper;
73 @Autowired
74 private DgBusinessService businessService;
75 @Autowired
76 private DgBusinessMapper businessMapper;
77 @Autowired
78 private DgBdcdyService bdcdyService;
79 @Autowired
80 private DgArchivesService archivesService;
81 @Autowired
82 private DgArchivesMapper dgarchivesMapper;
83 @Autowired
84 private DgArchivesConverter archivesConverter;
85 @Autowired
86 private DgReceiveRelationService relationService;
87 @Autowired
88 private DgReceiveRelationConverter relationConverter;
89 @Autowired
90 private DgArchivesCatalogConverter catalogConverter;
91 @Autowired
92 private DgArchivesCatalogService catalogService;
93 @Autowired
94 private DgFileConverter fileConverter;
95 @Autowired
96 private DgFileService fileService;
97 @Autowired
98 private MinioUtil minioUtil;
99
100 /**
101 * 新增记录
102 * @param request
103 * @return
104 */
105 @Override
106 @Transactional(rollbackFor = Exception.class)
107 public Result insertDgReceive(AddDgReceiveRequest request) throws Exception{
108 long starttime=System.currentTimeMillis();
109 //TODO字段值校验
110
111 //新增接收表信息=============start===========
112 //获取接收编码
113 String receiveBsm= IdWorker.get32UUID();
114 request.setBms_receive(receiveBsm);
115 DjywbmVO djywbmVO=dgreceiveMapper.getDjywbmInfo(request.getDjywbm());
116 DgReceiveDO dgreceiveDO = dgreceiveConverter.addRequest2DO(request);
117 if(djywbmVO!=null){
118 dgreceiveDO.setDjywbm(djywbmVO.getDjywbm());
119 dgreceiveDO.setDjywmc(djywbmVO.getDjywmc());
120 dgreceiveDO.setGdfs(djywbmVO.getGdfs());
121 }
122 this.save(dgreceiveDO);
123 //新增接收表信息=============end===========
124
125 //获取登记传入的不动产单元List集合数据
126 List<AddDgBdcdyRequest> bdcdyRequestList=request.getBdcdyRequestList();
127 //获取登记传入的业务数据
128 AddDgBusinessRequest businessRequest=request.getBusinessRequest();
129 //获取目录信息
130 List<AddDgArchivesCatalogRequest> catalogRequestList=request.getCatalogRequests();
131 //归档方式(1:按业务归档,2:按单元归档,3:档案补充归档)
132 if("1".equals(dgreceiveDO.getGdfs())){
133 //新增档案表基础信息
134 AddDgArchivesRequest archivesRequest=new AddDgArchivesRequest();
135 String bsm_archives= IdWorker.get32UUID();
136 archivesRequest.setBsmArchives(bsm_archives);
137 archivesRequest.setDazt(1);
138 archivesService.insertDgArchives(archivesRequest);
139 //新增接收表和档案表关联关系表
140 AddDgReceiveRelationRequest relationRequest=new AddDgReceiveRelationRequest();
141 relationRequest.setBmsReceive(receiveBsm);
142 relationRequest.setBsmArchives(bsm_archives);
143 relationService.insertDgReceiveRelation(relationRequest);
144 //新增目录和文件信息
145 dealCatalogAndFile(catalogRequestList,bsm_archives);
146 }else if("2".equals(dgreceiveDO.getGdfs())){
147 List<AddDgReceiveRelationRequest> relationRequestList=new ArrayList<AddDgReceiveRelationRequest>();
148 List<AddDgArchivesRequest> archivesRequest=new ArrayList<AddDgArchivesRequest>(bdcdyRequestList.size());
149 AddDgArchivesRequest archivesRequest1=null;
150 AddDgReceiveRelationRequest receiveRelationRequest=null;
151 for (int i = 0; i < bdcdyRequestList.size(); i++) {
152 //组装档案表基础信息
153 String bsm_archives= IdWorker.get32UUID();
154 archivesRequest1=new AddDgArchivesRequest();
155 archivesRequest1.setBsmArchives(bsm_archives);
156 archivesRequest1.setDazt(1);
157 archivesRequest.add(archivesRequest1);
158 //组装接收表和档案表关联关系表
159 receiveRelationRequest=new AddDgReceiveRelationRequest();
160 receiveRelationRequest.setBmsReceive(receiveBsm);
161 receiveRelationRequest.setBsmArchives(bsm_archives);
162 relationRequestList.add(receiveRelationRequest);
163 //新增目录和文件信息
164 dealCatalogAndFile(catalogRequestList,bsm_archives);
165 }
166 //批量新增接收表和档案表关联关系表
167 List<DgReceiveRelationDO> receiveRelationDOList=relationConverter.addReceiveRelationList(relationRequestList);
168 relationService.saveBatch(receiveRelationDOList);
169 //批量新增档案表基础信息
170 List<DgArchivesDO> archivesDOList=archivesConverter.addArchivesList(archivesRequest);
171 archivesService.saveBatch(archivesDOList);
172 }else if("3".equals(dgreceiveDO.getGdfs())){
173 //通过业务号和注销业务号查询业务表是否有数据,有数据则修改
174 DgBusinessSearchRequest searchRequest=new DgBusinessSearchRequest();
175 searchRequest.setYwh(businessRequest.getYwh());
176 searchRequest.setZxywh(businessRequest.getZxywh());
177 DgBusinessDO businessDO=businessService.searchDgBusiness(searchRequest);
178 if(businessDO!=null){
179 businessDO.setZxlx(businessRequest.getZxlx());
180 //更新业务表中的注销类型
181 businessMapper.updateById(businessDO);
182 Date zxsj=null;
183 for (int i = 0; i < bdcdyRequestList.size(); i++) {
184 if(businessDO.getBsmArchives().equals(bdcdyRequestList.get(i).getBsmArchives())){
185 zxsj=bdcdyRequestList.get(i).getZxsj();
186 break;
187 }
188 }
189 //更新不动产单元表中的注销时间
190 UpdateDgBdcdyRequest updateDgBdcdyRequest=new UpdateDgBdcdyRequest();
191 updateDgBdcdyRequest.setBsmArchives(businessDO.getBsmArchives());
192 updateDgBdcdyRequest.setZxsj(zxsj);
193 bdcdyService.updateDgBdcdyByArchive(updateDgBdcdyRequest);
194 }
195 }
196 //新增业务表
197 businessService.insertDgBusiness(businessRequest);
198 //批量新增不动产单元号表
199 List<DgBdcdyDO> bdcdyDOList=bdcdyConverter.addRequestListDO(bdcdyRequestList);
200 bdcdyService.saveBatch(bdcdyDOList);
201 long endtime=System.currentTimeMillis();
202 System.out.println("===================该方法总共耗时:"+(endtime-starttime)/1000+"秒");
203 return Result.ok();
204 }
205
206 /**
207 * 公共增加目录表和文件表信息
208 * @param catalogRequestList
209 * @param bsm_archives
210 */
211 private void dealCatalogAndFile(List<AddDgArchivesCatalogRequest> catalogRequestList,String bsm_archives) throws Exception{
212 try {
213 //批量组装文件信息=======start=========
214 List<DgFileDO> fileDOList=new ArrayList<DgFileDO>();
215 DgFileDO fileDO=null;
216 for (int j = 0; j < catalogRequestList.size(); j++) {
217 catalogRequestList.get(j).setBsmArchives(bsm_archives);
218 String cataLogBsm= IdWorker.get32UUID();
219 catalogRequestList.get(j).setBsm_catalog(cataLogBsm);
220 List<String> fileList=catalogRequestList.get(j).getFileList();
221 for (int k = 0; k <fileList.size() ; k++) {
222 fileDO=new DgFileDO();
223 File file=new File(fileList.get(k));
224 InputStream is =new FileInputStream(file);
225 String filetype=file.getName().substring(file.getName().lastIndexOf("."));
226 //文件上传
227 FileAttribute attribute=minioUtil.transferToMinio(is,file.getName(),filetype,String.valueOf(file.length()));
228 fileDO.setBsmCatalog(cataLogBsm);
229 fileDO.setKzm(attribute.getExpandName());
230 fileDO.setScr("admin");
231 fileDO.setFjurl(attribute.getSaveUrl());
232 fileDO.setFjsize(attribute.getFileSize());
233 fileDOList.add(fileDO);
234 }
235 }
236 //批量组装文件信息=======end=========
237 //批量组装目录信息
238 List<DgArchivesCatalogDO> catalogDOList=catalogConverter.addcataListDO(catalogRequestList);
239 //批量新增目录信息
240 catalogService.saveBatch(catalogDOList);
241 //批量新增对应文件信息
242 fileService.saveBatch(fileDOList);
243 }catch (Exception ex){
244 throw ex;
245 }
246 }
247
248 /**
249 * 根据条件进行列表查询
250 * @param request
251 * @return
252 */
253 @Override
254 public Result searchDgReceiveList(DgReceiveSearchRequest request) {
255 Page<DgReceiveDO> pageParam = new Page<DgReceiveDO>(request.getCurrentPage(), request.getPageSize());
256 QueryWrapper<DgReceiveDO> wrapper = new QueryWrapper<>();
257 wrapper.eq(request.getYwh()!=null && !"".equals(request.getYwh()),"YWH",request.getYwh());
258 wrapper.eq(request.getQllx()!=null && !"".equals(request.getQllx()),"QLLX",request.getQllx());
259 wrapper.eq(request.getDjlx()!=null && !"".equals(request.getDjlx()),"DJLX",request.getDjlx());
260 wrapper.eq(request.getYwlyjbm()!=null && !"".equals(request.getYwlyjbm()),"YWLYJBM",request.getYwlyjbm());
261 wrapper.eq("STATE","0");
262 Page page = this.page(pageParam, wrapper);
263 List<DgReceiveListVO> list=dgreceiveConverter.doList2ListVOList(page.getRecords());
264 return Result.ok(list);
265 }
266
267 @Override
268 @Transactional(rollbackFor = Exception.class)
269 public Result addBatchArchies(List<String> idList) {
270 //更新接收表归档时间和归档状态
271 boolean receiveFlag=dgreceiveMapper.updateReceiveBatch(idList,"1");//整理状态(0:待处理,1:已归档)
272 //查询接收表和档案表的关联关系表找出对应的档案
273 //档案状态(1:正在接收;2:正在补录;3:正在修改;4:在库;5:正在销毁;6:已销毁;7:正在借阅;8:已借阅)
274 boolean archivesFlag=dgarchivesMapper.updateArchivesInfoByReceiveIdList(idList,"4");
275 if(receiveFlag && archivesFlag){
276 return Result.ok("操作成功");
277 }else{
278 return Result.ok("操作失败");
279 }
280 }
281
282 }
1 package com.pashanhoo.receiverelation.entity;
2
3 import java.util.List;
4 import com.pashanhoo.receiverelation.entity.vo.AddDgReceiveRelationRequest;
5 import com.pashanhoo.receiverelation.entity.vo.DgReceiveRelationDetailVO;
6 import com.pashanhoo.receiverelation.entity.vo.DgReceiveRelationListVO;
7 import com.pashanhoo.receiverelation.entity.vo.UpdateDgReceiveRelationRequest;
8 import org.mapstruct.Mapper;
9
10 /**
11 * @author
12 * @since 2021-11-10
13 */
14 @Mapper(componentModel = "spring")
15 public interface DgReceiveRelationConverter{
16 DgReceiveRelationDO addRequest2DO(AddDgReceiveRelationRequest request);
17
18 DgReceiveRelationDetailVO do2DetailVO(DgReceiveRelationDO dgreceiverelationDO);
19
20 DgReceiveRelationDO updateRequest2DO(UpdateDgReceiveRelationRequest request);
21
22 DgReceiveRelationListVO do2ListVO(DgReceiveRelationDO dgreceiverelationDO);
23
24 List<DgReceiveRelationListVO> doList2ListVOList(List<DgReceiveRelationDO> dgreceiverelationDOList);
25
26 List<DgReceiveRelationDO> addReceiveRelationList(List<AddDgReceiveRelationRequest> request);
27 }
1 package com.pashanhoo.receiverelation.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.TableField;
5 import java.io.Serializable;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案接收关联表
12 * </p>
13 *
14 * @author
15 * @since 2021-11-10
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @TableName("DG_RECEIVE_RELATION")
20 public class DgReceiveRelationDO implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 关联标识码
26 */
27 @TableField("BSM_RELATION")
28 private String bsmRelation;
29
30 /**
31 * 档案标识码
32 */
33 @TableField("BSM_ARCHIVES")
34 private String bsmArchives;
35
36 /**
37 * 接收标识码
38 */
39 @TableField("BMS_RECEIVE")
40 private String bmsReceive;
41
42
43 }
1 package com.pashanhoo.receiverelation.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案接收关联表新增请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-10
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案接收关联表新增请求实体")
20 public class AddDgReceiveRelationRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 关联标识码
26 */
27 @ApiModelProperty(name = "bsmRelation", value = "关联标识码")
28 private String bsmRelation;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 接收标识码
38 */
39 @ApiModelProperty(name = "bmsReceive", value = "接收标识码")
40 private String bmsReceive;
41
42
43 }
1 package com.pashanhoo.receiverelation.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案接收关联表明细实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-10
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案接收关联表明细实体")
20 public class DgReceiveRelationDetailVO implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 关联标识码
26 */
27 @ApiModelProperty(name = "bsmRelation", value = "关联标识码")
28 private String bsmRelation;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 接收标识码
38 */
39 @ApiModelProperty(name = "bmsReceive", value = "接收标识码")
40 private String bmsReceive;
41
42
43 }
1 package com.pashanhoo.receiverelation.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案接收关联表列表VO
12 * </p>
13 *
14 * @author
15 * @since 2021-11-10
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案接收关联表列表VO")
20 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
21 public class DgReceiveRelationListVO implements Serializable {
22
23 private static final long serialVersionUID = 1L;
24
25 /**
26 * 关联标识码
27 */
28 @ApiModelProperty(name = "bsmRelation", value = "关联标识码")
29 private String bsmRelation;
30
31 /**
32 * 档案标识码
33 */
34 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
35 private String bsmArchives;
36
37 /**
38 * 接收标识码
39 */
40 @ApiModelProperty(name = "bmsReceive", value = "接收标识码")
41 private String bmsReceive;
42
43
44 }
1 package com.pashanhoo.receiverelation.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8 import com.pashanhoo.common.PageInfo;
9
10 /**
11 * <p>
12 * 档案接收关联表列表查询请求实体
13 * </p>
14 *
15 * @author
16 * @since 2021-11-10
17 */
18 @Data
19 @EqualsAndHashCode(callSuper = false)
20 @ApiModel(value="档案接收关联表列表查询请求实体")
21 public class DgReceiveRelationSearchRequest extends PageInfo implements Serializable {
22
23 private static final long serialVersionUID = 1L;
24
25 /**
26 * 关联标识码
27 */
28 @ApiModelProperty(name = "bsmRelation", value = "关联标识码")
29 private String bsmRelation;
30
31 /**
32 * 档案标识码
33 */
34 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
35 private String bsmArchives;
36
37 /**
38 * 接收标识码
39 */
40 @ApiModelProperty(name = "bmsReceive", value = "接收标识码")
41 private String bmsReceive;
42
43
44 }
1 package com.pashanhoo.receiverelation.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 档案接收关联表修改请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-10
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="档案接收关联表修改请求实体")
20 public class UpdateDgReceiveRelationRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 关联标识码
26 */
27 @ApiModelProperty(name = "bsmRelation", value = "关联标识码")
28 private String bsmRelation;
29
30 /**
31 * 档案标识码
32 */
33 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
34 private String bsmArchives;
35
36 /**
37 * 接收标识码
38 */
39 @ApiModelProperty(name = "bmsReceive", value = "接收标识码")
40 private String bmsReceive;
41
42
43 }
1 package com.pashanhoo.receiverelation.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.receiverelation.entity.DgReceiveRelationDO;
5
6 /**
7 * <p>
8 * 档案接收关联表 Mapper 接口
9 * </p>
10 *
11 * @author
12 * @since 2021-11-10
13 */
14 public interface DgReceiveRelationMapper extends BaseMapper<DgReceiveRelationDO> {
15
16
17
18
19 }
1 package com.pashanhoo.receiverelation.service;
2
3 import com.pashanhoo.receiverelation.entity.DgReceiveRelationDO;
4 import com.pashanhoo.receiverelation.entity.vo.AddDgReceiveRelationRequest;
5 import com.pashanhoo.receiverelation.entity.vo.DgReceiveRelationDetailVO;
6 import com.pashanhoo.receiverelation.entity.vo.UpdateDgReceiveRelationRequest;
7 import com.pashanhoo.receiverelation.entity.vo.DgReceiveRelationSearchRequest;
8 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
9 import com.baomidou.mybatisplus.extension.service.IService;
10
11 /**
12 * <p>
13 * 档案接收关联表 服务类
14 * </p>
15 *
16 * @author
17 * @since 2021-11-10
18 */
19 public interface DgReceiveRelationService extends IService<DgReceiveRelationDO> {
20 /**
21 * 新增记录
22 * @param request
23 * @return
24 */
25 boolean insertDgReceiveRelation(AddDgReceiveRelationRequest request);
26
27 /**
28 * 根据主键查询记录详情
29 * @param id
30 * @return
31 */
32 DgReceiveRelationDetailVO getDgReceiveRelationDetailById(String id);
33
34 /**
35 * 修改单条记录
36 * @param request
37 * @return
38 */
39 boolean updateDgReceiveRelation(UpdateDgReceiveRelationRequest request);
40
41 /**
42 * 根据条件进行列表查询
43 * @param request
44 * @return
45 */
46 Page searchDgReceiveRelationList(DgReceiveRelationSearchRequest request);
47 }
1 package com.pashanhoo.receiverelation.service.impl;
2
3 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 import com.pashanhoo.receiverelation.entity.DgReceiveRelationConverter;
5 import com.pashanhoo.receiverelation.entity.DgReceiveRelationDO;
6 import com.pashanhoo.receiverelation.entity.vo.AddDgReceiveRelationRequest;
7 import com.pashanhoo.receiverelation.entity.vo.DgReceiveRelationDetailVO;
8 import com.pashanhoo.receiverelation.entity.vo.UpdateDgReceiveRelationRequest;
9 import com.pashanhoo.receiverelation.entity.vo.DgReceiveRelationSearchRequest;
10 import com.pashanhoo.receiverelation.mapper.DgReceiveRelationMapper;
11 import com.pashanhoo.receiverelation.service.DgReceiveRelationService;
12 import org.springframework.beans.factory.annotation.Autowired;
13 import org.springframework.stereotype.Service;
14
15 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
16 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
17
18 /**
19 * <p>
20 * 档案接收关联表 服务实现类
21 * </p>
22 *
23 * @author
24 * @since 2021-11-10
25 */
26 @Service
27 public class DgReceiveRelationServiceImpl extends ServiceImpl<DgReceiveRelationMapper, DgReceiveRelationDO> implements DgReceiveRelationService {
28
29 @Autowired
30 private DgReceiveRelationConverter dgreceiverelationConverter;
31
32 @Autowired
33 private DgReceiveRelationMapper dgreceiverelationMapper;
34
35 /**
36 * 新增记录
37 * @param request
38 * @return
39 */
40 @Override
41 public boolean insertDgReceiveRelation(AddDgReceiveRelationRequest request) {
42 DgReceiveRelationDO dgreceiverelationDO = dgreceiverelationConverter.addRequest2DO(request);
43 return this.save(dgreceiverelationDO);
44 }
45
46 /**
47 * 根据主键查询记录详情
48 * @param id
49 * @return
50 */
51 @Override
52 public DgReceiveRelationDetailVO getDgReceiveRelationDetailById(String id) {
53 DgReceiveRelationDO dgreceiverelationDO = this.getById(id);
54 return dgreceiverelationConverter.do2DetailVO(dgreceiverelationDO);
55 }
56
57 /**
58 * 修改单条记录
59 * @param request
60 * @return
61 */
62 @Override
63 public boolean updateDgReceiveRelation(UpdateDgReceiveRelationRequest request) {
64 DgReceiveRelationDO dgreceiverelationDO = dgreceiverelationConverter.updateRequest2DO(request);
65 return this.updateById(dgreceiverelationDO);
66 }
67
68 /**
69 * 根据条件进行列表查询
70 * @param request
71 * @return
72 */
73 @Override
74 public Page searchDgReceiveRelationList(DgReceiveRelationSearchRequest request) {
75 Page<DgReceiveRelationDO> pageParam = new Page<DgReceiveRelationDO>(request.getCurrentPage(), request.getPageSize());
76 QueryWrapper<DgReceiveRelationDO> wrapper = new QueryWrapper<>();
77 //设置默认排序
78 wrapper = "desc".equals(request.getSortOrder()) ? wrapper.orderByDesc(request.getSortField()) : wrapper.orderByAsc(request.getSortField());
79
80 //TODO 根据当前情况设置wrapper条件
81
82 Page page = this.page(pageParam, wrapper);
83 //将查询出来的DO List转为 ListVO List并重新设置到page对象中,并返回page对象
84 return page.setRecords(dgreceiverelationConverter.doList2ListVOList(page.getRecords()));
85 }
86
87 }
1 package com.pashanhoo.replenish.controller;
2
3 import com.baomidou.mybatisplus.core.metadata.IPage;
4 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
5 import com.pashanhoo.common.Result;
6 import com.pashanhoo.replenish.entity.vo.AddDgArchivesReplenishRequest;
7 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishListVO;
8 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishSearchRequest;
9 import com.pashanhoo.replenish.service.DgArchivesReplenishService;
10 import io.swagger.annotations.Api;
11 import io.swagger.annotations.ApiOperation;
12 import io.swagger.annotations.ApiParam;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import org.springframework.web.bind.annotation.*;
15
16 import java.util.List;
17
18 /**
19 * <p>
20 * 档案补录信息 前端控制器
21 * </p>
22 *
23 * @author
24 * @since 2021-11-05
25 */
26 @RestController
27 @RequestMapping("/system/dgArchivesReplenish/")
28 @Api(tags = "档案补录信息接口")
29 public class DgArchivesReplenishController {
30 @Autowired
31 private DgArchivesReplenishService dgarchivesreplenishService;
32
33 @PostMapping("insertDgArchivesReplenish")
34 @ApiOperation("新增档案补录信息")
35 public Result insertDgArchivesReplenish(@RequestBody AddDgArchivesReplenishRequest request){
36 //生成案卷标识码
37 String bsmArchive = IdWorker.get32UUID();
38 if(dgarchivesreplenishService.insertDgArchivesReplenish(request,bsmArchive)){
39 return Result.ok(bsmArchive);
40 }
41 return Result.error("新增失败");
42 }
43
44 @DeleteMapping("deleteDgArchivesReplenishByIds")
45 @ApiOperation(value = "批量删除档案补录信息")
46 public Result deleteDgArchivesReplenishByIds(@ApiParam("档案标识码") @RequestParam(value = "bsmArchives") List<String> bsmArchives) {
47 try {
48 if(dgarchivesreplenishService.delete(bsmArchives)) {
49 return Result.ok("删除成功");
50 }
51 } catch (Exception e) {
52 return Result.exception(e.getMessage());
53 }
54 return Result.ok("删除失败");
55 }
56
57 @GetMapping("getDgArchivesReplenishDetailById")
58 @ApiOperation(value = "读取明细")
59 public Result getDgArchivesReplenishDetailById(@ApiParam("档案补录信息ID") @RequestParam String id){
60 return Result.ok(dgarchivesreplenishService.getDgArchivesReplenishDetailById(id));
61 }
62
63 @PostMapping("search")
64 @ApiOperation(value = "补录列表根据条件查询")
65 public Result<IPage<DgArchivesReplenishListVO>> searchDgArchivesReplenishList(@RequestBody DgArchivesReplenishSearchRequest request) {
66
67 return Result.ok(dgarchivesreplenishService.searchDgArchivesReplenishList(request));
68 }
69
70 @GetMapping("doReplenishArchive")
71 @ApiOperation(value = "归档")
72 public Result doReplenishArchive(@ApiParam("档案补录标识码") @RequestParam String bsmModify,@ApiParam("档案标识码") @RequestParam String bsmArchive){
73 boolean flag = dgarchivesreplenishService.doReplenishArchive(bsmModify, bsmArchive);
74 if (flag) {
75 return Result.ok("归档成功");
76 } else {
77 return Result.error("归档失败");
78 }
79 }
80 }
1 package com.pashanhoo.replenish.entity;
2
3 import java.util.List;
4
5 import com.pashanhoo.archive.entity.vo.UpdateArchiveAndOtherInfoRequest;
6 import com.pashanhoo.replenish.entity.vo.AddDgArchivesReplenishRequest;
7 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishDetailVO;
8 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishListVO;
9 import org.mapstruct.Mapper;
10
11 /**
12 * @author
13 * @since 2021-11-05
14 */
15 @Mapper(componentModel = "spring")
16 public interface DgArchivesReplenishConverter{
17 DgArchivesReplenishDO addRequest2DO(AddDgArchivesReplenishRequest request);
18
19 DgArchivesReplenishDetailVO do2DetailVO(DgArchivesReplenishDO dgarchivesreplenishDO);
20
21 DgArchivesReplenishDO updateRequest2DO(UpdateArchiveAndOtherInfoRequest request);
22
23 DgArchivesReplenishListVO do2ListVO(DgArchivesReplenishDO dgarchivesreplenishDO);
24
25 List<DgArchivesReplenishListVO> doList2ListVOList(List<DgArchivesReplenishDO> dgarchivesreplenishDOList);
26 }
1 package com.pashanhoo.replenish.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import java.util.Date;
6 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableField;
8 import java.io.Serializable;
9
10 import com.fasterxml.jackson.annotation.JsonFormat;
11 import lombok.Data;
12 import lombok.EqualsAndHashCode;
13 import org.springframework.format.annotation.DateTimeFormat;
14
15 /**
16 * <p>
17 * 档案补录信息
18 * </p>
19 *
20 * @author
21 * @since 2021-11-05
22 */
23 @Data
24 @EqualsAndHashCode(callSuper = false)
25 @TableName("DG_REPLENISH")
26 public class DgArchivesReplenishDO implements Serializable {
27
28 private static final long serialVersionUID = 1L;
29
30 /**
31 * 修改标识码
32 */
33 @TableId(value = "BSM_MODIFY", type = IdType.UUID)
34 private String bsmModify;
35
36 /**
37 * 档案标识码
38 */
39 @TableField("BSM_ARCHIVES")
40 private String bsmArchives;
41
42 /**
43 * 原档案信息
44 */
45 @TableField("BLBH")
46 private String blbh;
47
48 /**
49 * 创建时间
50 */
51 @TableField("CREATETIME")
52 private Date createTime;
53
54 /**
55 * 修改人
56 */
57 @TableField("CREATER")
58 private String creater;
59
60 /**
61 * 备注
62 */
63 @TableField("BZ")
64 private String bz;
65
66 /**
67 * 状态1:补录中,2:已归档
68 */
69 @TableField("STATE")
70 @DateTimeFormat(pattern = "yyyy-MM-dd")
71 @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
72 private String state;
73
74 /**
75 * 归档时间
76 */
77 @TableField("GDSJ")
78 @DateTimeFormat(pattern = "yyyy-MM-dd")
79 @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
80 private Date gdsj;
81 }
1 package com.pashanhoo.replenish.entity.vo;
2
3 import java.io.Serializable;
4 import java.util.List;
5
6 import com.pashanhoo.archive.entity.vo.AddDgArchivesRequest;
7 import com.pashanhoo.bdcdy.entity.vo.AddDgBdcdyRequest;
8 import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
9 import io.swagger.annotations.ApiModel;
10 import io.swagger.annotations.ApiModelProperty;
11 import lombok.Data;
12 import lombok.EqualsAndHashCode;
13
14 /**
15 * <p>
16 * 档案补录信息新增请求实体
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 @Data
23 @EqualsAndHashCode(callSuper = false)
24 @ApiModel(value="档案补录信息新增请求实体")
25 public class AddDgArchivesReplenishRequest implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28
29 /**
30 * 新增案卷基本信息
31 */
32 @ApiModelProperty(name = "addDgArchivesRequest", value = "新增案卷基本信息")
33 private AddDgArchivesRequest addDgArchivesRequest;
34
35 /**
36 * 新增业务信息
37 */
38 @ApiModelProperty(name = "addDgBusinessRequest",value = "新增业务信息")
39 private AddDgBusinessRequest addDgBusinessRequest;
40
41 /**
42 * 新增不动产单元信息
43 */
44 @ApiModelProperty(name = "addDgBdcdyRequests",value = "新增不动产单元信息")
45 private List<AddDgBdcdyRequest> addDgBdcdyRequests;
46 }
1 package com.pashanhoo.replenish.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import com.fasterxml.jackson.annotation.JsonFormat;
8 import io.swagger.annotations.ApiModel;
9 import io.swagger.annotations.ApiModelProperty;
10 import lombok.Data;
11 import lombok.EqualsAndHashCode;
12 import org.springframework.format.annotation.DateTimeFormat;
13
14 /**
15 * <p>
16 * 档案补录信息明细实体
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 @Data
23 @EqualsAndHashCode(callSuper = false)
24 @ApiModel(value="档案补录信息明细实体")
25 public class DgArchivesReplenishDetailVO implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28
29 /**
30 * 修改标识码
31 */
32 @ApiModelProperty(name = "bsmModify", value = "修改标识码")
33 private String bsmModify;
34
35 /**
36 * 档案标识码
37 */
38 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
39 private String bsmArchives;
40
41 /**
42 * 原档案信息
43 */
44 @ApiModelProperty(name = "blbh", value = "原档案信息")
45 private String blbh;
46
47 /**
48 *补录人
49 */
50 @ApiModelProperty(name = "creater", value = "补录人")
51 private String creater;
52
53 /**
54 * 创建时间
55 */
56 @ApiModelProperty(name = "createTime", value = "创建时间")
57 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
58 private Date createTime;
59
60 /**
61 * 备注
62 */
63 @ApiModelProperty(name = "bz", value = "备注")
64 private String bz;
65
66 /**
67 * 状态1:补录中,2:已归档
68 */
69 @ApiModelProperty(name = "state", value = "状态1:补录中,2:已归档")
70 private String state;
71
72 /**
73 * 归档时间
74 */
75 @ApiModelProperty(name = "gdsj", value = "归档时间")
76 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
77 private Date gdsj;
78 }
1 package com.pashanhoo.replenish.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import com.fasterxml.jackson.annotation.JsonFormat;
8 import io.swagger.annotations.ApiModel;
9 import io.swagger.annotations.ApiModelProperty;
10 import lombok.Data;
11 import lombok.EqualsAndHashCode;
12 import org.springframework.format.annotation.DateTimeFormat;
13
14 /**
15 * <p>
16 * 档案补录信息列表VO
17 * </p>
18 *
19 * @author
20 * @since 2021-11-05
21 */
22 @Data
23 @EqualsAndHashCode(callSuper = false)
24 @ApiModel(value="档案补录信息列表VO")
25 public class DgArchivesReplenishListVO implements Serializable {
26
27 private static final long serialVersionUID = 1L;
28
29 /**
30 * 档案标识码
31 */
32 @ApiModelProperty(name = "bsmArchives", value = "档案标识码")
33 private String bsmArchives;
34
35 /**
36 * 补录标识码
37 */
38 @ApiModelProperty(name = "bsmModify", value = "补录标识码")
39 private String bsmModify;
40
41 /**
42 * 业务类型名称
43 */
44 @ApiModelProperty(name = "qllx", value = "业务类型名称")
45 private String qllx;
46
47 /**
48 * 登记类型
49 */
50 @ApiModelProperty(name = "djlx", value = "登记类型")
51 private String djlx;
52
53 /**
54 * 档案号
55 */
56 @ApiModelProperty(name = "ajh", value = "档案号")
57 private String ajh;
58
59 /**
60 * 业务号
61 */
62 @ApiModelProperty(name = "ywh", value = "业务号")
63 private String ywh;
64
65 /**
66 * 不动产单元号数量
67 */
68 @ApiModelProperty(name = "bdcdyNum", value = "不动产单元号数量")
69 private String bdcdyNum;
70
71 /**
72 * 权利人
73 */
74 @ApiModelProperty(name = "qlr", value = "权利人")
75 private String qlr;
76
77 /**
78 * 义务人
79 */
80 @ApiModelProperty(name = "ywr", value = "义务人")
81 private String ywr;
82
83 /**
84 * 不动产证件号码
85 */
86 @ApiModelProperty(name = "bdcqzh", value = "不动产证件号码")
87 private String bdcqzh;
88
89 /**
90 * 创建时间
91 */
92 @ApiModelProperty(name = "createTime", value = "创建时间")
93 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
94 private Date createTime;
95
96 /**
97 * 补录人
98 */
99 @ApiModelProperty(name = "creater", value = "补录人")
100 private String creater;
101
102 /**
103 * 不动产单元号
104 */
105 @ApiModelProperty(name = "bdcdyh", value = "不动产单元号")
106 private String bdcdyh;
107
108 /**
109 * 状态1:补录中,2:已归档
110 */
111 @ApiModelProperty(name = "state", value = "状态1:补录中,2:已归档")
112 private String state;
113
114 /**
115 * 归档时间
116 */
117 @TableField("GDSJ")
118 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
119 private Date gdsj;
120 }
1 package com.pashanhoo.replenish.entity.vo;
2
3 import java.util.Date;
4 import java.io.Serializable;
5
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import com.fasterxml.jackson.annotation.JsonFormat;
8 import io.swagger.annotations.ApiModel;
9 import io.swagger.annotations.ApiModelProperty;
10 import lombok.Data;
11 import lombok.EqualsAndHashCode;
12 import com.pashanhoo.common.PageInfo;
13 import org.springframework.format.annotation.DateTimeFormat;
14
15 /**
16 * <p>
17 * 档案补录信息列表查询请求实体
18 * </p>
19 *
20 * @author
21 * @since 2021-11-05
22 */
23 @Data
24 @EqualsAndHashCode(callSuper = false)
25 @ApiModel(value="档案补录信息列表查询请求实体")
26 public class DgArchivesReplenishSearchRequest extends PageInfo implements Serializable {
27
28 private static final long serialVersionUID = 1L;
29
30 /**
31 * 业务号
32 */
33 @ApiModelProperty(name = "ywh", value = "业务号")
34 private String ywh;
35
36 /**
37 * 权利类型
38 */
39 @ApiModelProperty(name = "qllx", value = "权利类型")
40 private String qllx;
41
42 /**
43 * 登记类型
44 */
45 @ApiModelProperty(name = "djlx", value = "登记类型")
46 private String djlx;
47
48 /**
49 *补录人
50 */
51 @ApiModelProperty(name = "creater", value = "补录人")
52 private String creater;
53
54 /**
55 * 创建时间
56 */
57 @ApiModelProperty(name = "createTime", value = "创建时间")
58 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
59 private Date createTime;
60
61 /**
62 * 状态1:补录中,2:已归档
63 */
64 @ApiModelProperty(name = "state", value = "状态1:补录中,2:已归档")
65 private String state;
66
67 /**
68 * 归档时间
69 */
70 @ApiModelProperty(name = "gdsj", value = "归档时间")
71 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
72 private Date gdsj;
73 }
1 package com.pashanhoo.replenish.mapper;
2
3
4 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 import com.baomidou.mybatisplus.core.metadata.IPage;
6 import com.pashanhoo.replenish.entity.DgArchivesReplenishDO;
7 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishListVO;
8 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishSearchRequest;
9 import org.apache.ibatis.annotations.Param;
10
11
12 /**
13 * <p>
14 * 档案补录信息 Mapper 接口
15 * </p>
16 *
17 * @author
18 * @since 2021-11-05
19 */
20 public interface DgArchivesReplenishMapper extends BaseMapper<DgArchivesReplenishDO> {
21
22 /**
23 * 补录列表根据条件查询
24 * @param pageParam
25 * @param request
26 * @return
27 */
28 IPage<DgArchivesReplenishListVO> search(@Param("pageParam") IPage<DgArchivesReplenishListVO> pageParam, @Param("request") DgArchivesReplenishSearchRequest request);
29
30 }
1 package com.pashanhoo.replenish.service;
2
3 import com.baomidou.mybatisplus.core.metadata.IPage;
4 import com.baomidou.mybatisplus.extension.service.IService;
5 import com.pashanhoo.replenish.entity.*;
6 import com.pashanhoo.replenish.entity.vo.*;
7
8 import java.util.List;
9
10 /**
11 * <p>
12 * 档案补录信息 服务类
13 * </p>
14 *
15 * @author
16 * @since 2021-11-05
17 */
18 public interface DgArchivesReplenishService extends IService<DgArchivesReplenishDO> {
19 /**
20 * 新增记录
21 *
22 * @param request
23 * @param bsmArchive 主键
24 * @return
25 */
26 boolean insertDgArchivesReplenish(AddDgArchivesReplenishRequest request,String bsmArchive);
27
28 /**
29 * 根据主键查询记录详情
30 *
31 * @param id
32 * @return
33 */
34 DgArchivesReplenishDetailVO getDgArchivesReplenishDetailById(String id);
35
36 /**
37 * 补录列表根据条件查询
38 *
39 * @param request
40 * @return
41 */
42 IPage<DgArchivesReplenishListVO> searchDgArchivesReplenishList(DgArchivesReplenishSearchRequest request);
43
44 /**
45 * 删除补录信息
46 *
47 * @param bsmArchives 档案标识码
48 * @return
49 */
50 boolean delete(List<String> bsmArchives) throws Exception;
51
52 /**
53 * 补录归档
54 * 补录记录的状态为已归档和归档日期,一并修改档案记录的状态为在库,判断卷内目录和每个卷内目录对应的附件列表是否为空,如果为空不能归档
55 *
56 * @param bsmModify 补录标识码
57 * @param bsmArchive 档案标识码
58 * @return
59 */
60 boolean doReplenishArchive(String bsmModify,String bsmArchive);
61 }
1 package com.pashanhoo.replenish.service.impl;
2
3 import cn.hutool.core.collection.CollUtil;
4 import cn.hutool.core.date.DateTime;
5 import cn.hutool.core.date.DateUtil;
6 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
7 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
8 import com.baomidou.mybatisplus.core.metadata.IPage;
9 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
10 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
11 import com.pashanhoo.archive.entity.ArchiveStatus;
12 import com.pashanhoo.archive.entity.DgArchivesConverter;
13 import com.pashanhoo.archive.entity.DgArchivesDO;
14 import com.pashanhoo.archive.entity.vo.AddDgArchivesRequest;
15 import com.pashanhoo.archive.service.DgArchivesService;
16 import com.pashanhoo.bdcdy.entity.DgBdcdyConverter;
17 import com.pashanhoo.bdcdy.entity.DgBdcdyDO;
18 import com.pashanhoo.bdcdy.entity.vo.AddDgBdcdyRequest;
19 import com.pashanhoo.bdcdy.service.DgBdcdyService;
20 import com.pashanhoo.business.entity.DgBusinessConverter;
21 import com.pashanhoo.business.entity.DgBusinessDO;
22 import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
23 import com.pashanhoo.business.service.DgBusinessService;
24 import com.pashanhoo.catalog.entity.DgArchivesCatalogDO;
25 import com.pashanhoo.catalog.service.DgArchivesCatalogService;
26 import com.pashanhoo.common.util.SysCode.SysCodeUtil;
27 import com.pashanhoo.common.util.SysCode.SysCodeVO;
28 import com.pashanhoo.common.util.fileupload.MinioConfig;
29 import com.pashanhoo.common.util.fileupload.MinioUtil;
30 import com.pashanhoo.file.entity.DgFileDO;
31 import com.pashanhoo.file.service.DgFileService;
32 import com.pashanhoo.replenish.entity.DgArchivesReplenishConverter;
33 import com.pashanhoo.replenish.entity.DgArchivesReplenishDO;
34 import com.pashanhoo.replenish.entity.vo.AddDgArchivesReplenishRequest;
35 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishDetailVO;
36 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishListVO;
37 import com.pashanhoo.replenish.entity.vo.DgArchivesReplenishSearchRequest;
38 import com.pashanhoo.replenish.mapper.DgArchivesReplenishMapper;
39 import com.pashanhoo.replenish.service.DgArchivesReplenishService;
40 import org.springframework.beans.factory.annotation.Autowired;
41 import org.springframework.stereotype.Service;
42 import org.springframework.transaction.annotation.Transactional;
43
44 import java.util.ArrayList;
45 import java.util.List;
46 import java.util.concurrent.ConcurrentHashMap;
47 import java.util.function.Function;
48 import java.util.function.Predicate;
49 import java.util.stream.Collectors;
50
51 /**
52 * <p>
53 * 档案补录信息 服务实现类
54 * </p>
55 *
56 * @author
57 * @since 2021-11-05
58 */
59 @Service
60 public class DgArchivesReplenishServiceImpl extends ServiceImpl<DgArchivesReplenishMapper, DgArchivesReplenishDO> implements DgArchivesReplenishService {
61
62 @Autowired
63 private DgArchivesReplenishConverter dgarchivesreplenishConverter;
64
65 @Autowired
66 private DgArchivesReplenishMapper dgarchivesreplenishMapper;
67
68 @Autowired
69 private DgArchivesService dgArchivesService;
70
71 @Autowired
72 private DgArchivesConverter dgArchivesConverter;
73
74 @Autowired
75 private DgBusinessService dgBusinessService;
76
77 @Autowired
78 private DgBusinessConverter dgBusinessConverter;
79
80 @Autowired
81 private DgBdcdyService dgBdcdyService;
82
83 @Autowired
84 private DgBdcdyConverter dgBdcdyConverter;
85
86 @Autowired
87 SysCodeUtil sysCodeUtil;
88
89 @Autowired
90 DgArchivesCatalogService dgArchivesCatalogService;
91
92 @Autowired
93 DgFileService dgFileService;
94
95 @Autowired
96 MinioUtil minioUtil;
97
98 @Autowired
99 MinioConfig minioConfig;
100
101
102 /**
103 * 新增记录
104 *
105 * @param request
106 * @param bsmArchive 生成主键
107 * @return
108 */
109 @Override
110 @Transactional(rollbackFor = Exception.class)
111 public boolean insertDgArchivesReplenish(AddDgArchivesReplenishRequest request,String bsmArchive) {
112
113 //案卷基本信息
114 AddDgArchivesRequest addDgArchivesRequest = request.getAddDgArchivesRequest();
115 addDgArchivesRequest.setBsmArchives(bsmArchive);
116 addDgArchivesRequest.setDazt(ArchiveStatus.REPLENISHING.getCode());
117 DgArchivesDO dgArchivesDO = dgArchivesConverter.addRequest2DO(addDgArchivesRequest);
118 dgArchivesService.save(dgArchivesDO);
119
120 //业务信息
121 AddDgBusinessRequest addDgBusinessRequest = request.getAddDgBusinessRequest();
122 addDgBusinessRequest.setBsmArchives(bsmArchive);
123 DgBusinessDO dgBusinessDO = dgBusinessConverter.addRequest2DO(addDgBusinessRequest);
124 dgBusinessService.save(dgBusinessDO);
125
126 //不动产单元信息
127 List<AddDgBdcdyRequest> addDgBdcdyRequests = request.getAddDgBdcdyRequests();
128 for (AddDgBdcdyRequest addDgBdcdyRequest : addDgBdcdyRequests) {
129 addDgBdcdyRequest.setBsmArchives(bsmArchive);
130 }
131 List<DgBdcdyDO> dgBdcdyDOS = dgBdcdyConverter.addRequestListDO(addDgBdcdyRequests);
132 dgBdcdyService.saveBatch(dgBdcdyDOS);
133
134 //档案补录记录
135 DgArchivesReplenishDO dgArchivesReplenishDO = new DgArchivesReplenishDO();
136 dgArchivesReplenishDO.setBsmArchives(bsmArchive);
137 //获取补录编号
138 SysCodeVO sysCodeVO = new SysCodeVO();
139 sysCodeVO.setTaskno("BL" + DateUtil.year(DateUtil.date()));
140 sysCodeVO.setCtype("sequence");
141 sysCodeVO.setTaskname("补录序列号");
142 sysCodeVO.setTaskchild(5);
143 String blbh = sysCodeUtil.getSequence(sysCodeVO);
144 dgArchivesReplenishDO.setBlbh(blbh);
145 /******************************************************/
146 dgArchivesReplenishDO.setCreateTime(DateTime.now());
147 dgArchivesReplenishDO.setCreater(null);
148 dgArchivesReplenishDO.setBz(null);
149 dgArchivesReplenishDO.setState("1");
150 dgArchivesReplenishDO.setGdsj(null);
151 return this.save(dgArchivesReplenishDO);
152 }
153
154 /**
155 * 根据主键查询记录详情
156 *
157 * @param id
158 * @return
159 */
160 @Override
161 public DgArchivesReplenishDetailVO getDgArchivesReplenishDetailById(String id) {
162 DgArchivesReplenishDO dgarchivesreplenishDO = this.getById(id);
163 return dgarchivesreplenishConverter.do2DetailVO(dgarchivesreplenishDO);
164 }
165
166 /**
167 * 补录列表根据条件查询
168 *
169 * @param request
170 * @return
171 */
172 @Override
173 public IPage<DgArchivesReplenishListVO> searchDgArchivesReplenishList(DgArchivesReplenishSearchRequest request) {
174
175 IPage<DgArchivesReplenishListVO> pageParam = new Page<>(request.getCurrentPage(), request.getPageSize());
176 IPage<DgArchivesReplenishListVO> result = dgarchivesreplenishMapper.search(pageParam, request);
177 List<DgArchivesReplenishListVO> records = result.getRecords();
178 List<DgArchivesReplenishListVO> clean = records.stream().filter(distinctByKey(DgArchivesReplenishListVO::getBsmArchives)).collect(Collectors.toList());
179 result.setTotal(clean.size());
180 return result.setRecords(clean);
181 }
182
183 public static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
184 ConcurrentHashMap<Object, Boolean> hashMap = new ConcurrentHashMap<>();
185 return t -> hashMap.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
186 }
187
188 /**
189 * 删除补录信息和对应档案资料
190 *
191 * @param bsmArchives 档案标识码
192 * @return
193 */
194 @Override
195 @Transactional(rollbackFor = Exception.class)
196 public boolean delete(List<String> bsmArchives) throws Exception {
197 //删除补录记录
198 QueryWrapper<DgArchivesReplenishDO> replenishWrapper = new QueryWrapper<>();
199 replenishWrapper.lambda().in(DgArchivesReplenishDO::getBsmArchives, bsmArchives);
200 this.remove(replenishWrapper);
201
202 //删除不动产信息
203 QueryWrapper<DgBdcdyDO> bdcdyWrapper = new QueryWrapper<>();
204 bdcdyWrapper.lambda().in(DgBdcdyDO::getBsmArchives, bsmArchives);
205 dgBdcdyService.remove(bdcdyWrapper);
206
207 //删除档案业务信息
208 QueryWrapper<DgBusinessDO> businessWrapper = new QueryWrapper<>();
209 businessWrapper.lambda().in(DgBusinessDO::getBsmArchives, bsmArchives);
210 dgBusinessService.remove(businessWrapper);
211
212 //删除卷内目录信息
213 QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>();
214 catalogWrapper.lambda().in(DgArchivesCatalogDO::getBsmArchives, bsmArchives);
215 List<DgArchivesCatalogDO> catalogList = dgArchivesCatalogService.list(catalogWrapper);
216 // TODO: 2021/11/16/0016 删除卷内目录操作移动到删除附件表之后
217
218 //删除附件表信息
219 List<String> bsmCatalogs = new ArrayList<>();
220 for (DgArchivesCatalogDO dgArchivesCatalogDO : catalogList) {
221 bsmCatalogs.add(dgArchivesCatalogDO.getBsmCatalog());
222 }
223 QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>();
224 fileWrapper.lambda().select(DgFileDO::getFjurl).in(DgFileDO::getBsmCatalog, bsmCatalogs);
225 //获取文件存储路径
226 List<DgFileDO> files = dgFileService.list(fileWrapper);
227 QueryWrapper<DgFileDO> deleteWrapper = new QueryWrapper<>();
228 deleteWrapper.lambda().in(DgFileDO::getBsmCatalog, bsmCatalogs);
229 dgFileService.remove(deleteWrapper);
230 //删除卷内目录.测试环境主外键约束需要先删除附件表再删除卷内目录表.所以代码移动到这里
231 dgArchivesCatalogService.remove(catalogWrapper);
232
233 //删除档案信息表
234 QueryWrapper<DgArchivesDO> archivesWrapper = new QueryWrapper<>();
235 archivesWrapper.lambda().in(DgArchivesDO::getBsmArchives, bsmArchives);
236 boolean flag = dgArchivesService.remove(archivesWrapper);
237
238 //删除文件服务器附件
239 List<String> fileUrls = files.stream().map(DgFileDO::getFjurl).collect(Collectors.toList());
240 for (String fileUrl : fileUrls) {
241 minioUtil.removeObject(minioConfig.getBucket(), fileUrl);
242 }
243
244 return flag;
245 }
246
247 /**
248 * 补录归档
249 * 补录记录的状态为已归档和归档日期,一并修改档案记录的状态为在库,判断卷内目录和每个卷内目录对应的附件列表是否为空,如果为空不能归档.
250 *
251 * @param bsmModify 补录标识码
252 * @param bsmArchive 档案标识码
253 * @return
254 */
255 @Override
256 @Transactional(rollbackFor = Exception.class)
257 public boolean doReplenishArchive(String bsmModify, String bsmArchive) {
258
259 //判断卷内目录和附件是否有数据
260 QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>();
261 QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>();
262 catalogWrapper.lambda().eq(DgArchivesCatalogDO::getBsmArchives, bsmArchive);
263 //目录集合
264 List<DgArchivesCatalogDO> catalogDOList = dgArchivesCatalogService.list(catalogWrapper);
265 //获取附件集合
266 List<String> bsmCatalogs = catalogDOList.stream().map(DgArchivesCatalogDO::getBsmCatalog).collect(Collectors.toList());
267
268 if (CollUtil.isEmpty(catalogDOList)) {
269 return false;
270 }
271 for (String bsmCatalog : bsmCatalogs) {
272 fileWrapper.lambda().eq(DgFileDO::getBsmCatalog, bsmCatalog);
273 List<DgFileDO> fileDOList = dgFileService.list(fileWrapper);
274 if (CollUtil.isEmpty(fileDOList)) {
275 return false;
276 }
277 }
278
279 //更新补录表归档信息
280 UpdateWrapper<DgArchivesReplenishDO> replenishUpdateWrapper = new UpdateWrapper<>();
281 DgArchivesReplenishDO replenishDO = new DgArchivesReplenishDO();
282 replenishDO.setBsmModify(bsmModify);
283 replenishUpdateWrapper.lambda().set(DgArchivesReplenishDO::getCreateTime, DateUtil.date()).set(DgArchivesReplenishDO::getState, "2").eq(DgArchivesReplenishDO::getBsmModify, bsmModify);
284 this.update(replenishDO, replenishUpdateWrapper);
285
286 //更新档案表状态
287 UpdateWrapper<DgArchivesDO> archiveUpdateWrapper = new UpdateWrapper<>();
288 DgArchivesDO archivesDO = new DgArchivesDO();
289 archivesDO.setBsmArchives(bsmArchive);
290 archiveUpdateWrapper.lambda().set(DgArchivesDO::getDazt, ArchiveStatus.STORED.getCode()).eq(DgArchivesDO::getBsmArchives, bsmArchive);
291 return dgArchivesService.update(archivesDO, archiveUpdateWrapper);
292 }
293
294 }
1 package com.pashanhoo.staff.controller;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.staff.entity.vo.AddDgStaffRequest;
5 import com.pashanhoo.staff.entity.vo.UpdateDgStaffRequest;
6 import com.pashanhoo.staff.entity.vo.DgStaffSearchRequest;
7 import com.pashanhoo.staff.service.DgStaffService;
8 import org.springframework.web.bind.annotation.RestController;
9 import org.springframework.web.bind.annotation.*;
10 import io.swagger.annotations.Api;
11 import io.swagger.annotations.ApiOperation;
12 import io.swagger.annotations.ApiParam;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import java.util.List;
15
16 /**
17 * <p>
18 * 员工登录表 前端控制器
19 * </p>
20 *
21 * @author
22 * @since 2021-11-08
23 */
24 @RestController
25 @RequestMapping("/system/dgStaff/")
26 @Api(tags = "员工登录表接口")
27 public class DgStaffController {
28 @Autowired
29 private DgStaffService dgstaffService;
30
31 @PostMapping("insertDgStaff")
32 @ApiOperation("新增员工登录表")
33 public Result insertDgStaff(@RequestBody AddDgStaffRequest request){
34 if(dgstaffService.insertDgStaff(request)){
35 return Result.ok();
36 }
37 return Result.error("新增失败");
38 }
39
40 @DeleteMapping("deleteDgStaffByIds")
41 @ApiOperation(value = "批量删除员工登录表")
42 public Result deleteDgStaffByIds(@ApiParam("员工登录表ID列表") @RequestParam(value = "idList") List<String> idList) {
43 if(dgstaffService.removeByIds(idList)) {
44 return Result.ok("删除成功");
45 }
46 return Result.error("删除失败");
47 }
48
49 @PutMapping("updateDgStaff")
50 @ApiOperation("修改员工登录表")
51 public Result updateDgStaff(@RequestBody UpdateDgStaffRequest request){
52 if(dgstaffService.updateDgStaff(request)) {
53 return Result.ok("修改成功");
54 }
55 return Result.error("修改失败");
56 }
57
58 @GetMapping("getDgStaffDetailById")
59 @ApiOperation(value = "读取明细")
60 public Result getDgStaffDetailById(@ApiParam("员工登录表ID") @RequestParam String id){
61 return Result.ok(dgstaffService.getDgStaffDetailById(id));
62 }
63
64 @PostMapping("search")
65 @ApiOperation(value = "根据条件进行列表查询")
66 public Result searchDgStaffList(@RequestBody DgStaffSearchRequest request) {
67 //TODO 默认排序条件设置
68 request.defaultFillPageProp("","");
69 return Result.ok(dgstaffService.searchDgStaffList(request));
70 }
71 }
1 package com.pashanhoo.staff.entity;
2
3 import java.util.List;
4 import com.pashanhoo.staff.entity.vo.AddDgStaffRequest;
5 import com.pashanhoo.staff.entity.vo.DgStaffDetailVO;
6 import com.pashanhoo.staff.entity.vo.DgStaffListVO;
7 import com.pashanhoo.staff.entity.vo.UpdateDgStaffRequest;
8 import org.mapstruct.Mapper;
9
10 /**
11 * @author
12 * @since 2021-11-08
13 */
14 @Mapper(componentModel = "spring")
15 public interface DgStaffConverter{
16 DgStaffDO addRequest2DO(AddDgStaffRequest request);
17
18 DgStaffDetailVO do2DetailVO(DgStaffDO dgstaffDO);
19
20 DgStaffDO updateRequest2DO(UpdateDgStaffRequest request);
21
22 DgStaffListVO do2ListVO(DgStaffDO dgstaffDO);
23
24 List<DgStaffListVO> doList2ListVOList(List<DgStaffDO> dgstaffDOList);
25 }
1 package com.pashanhoo.staff.entity;
2
3 import com.baomidou.mybatisplus.annotation.TableName;
4 import com.baomidou.mybatisplus.annotation.IdType;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import java.io.Serializable;
8 import lombok.Data;
9 import lombok.EqualsAndHashCode;
10
11 /**
12 * <p>
13 * 员工登录表
14 * </p>
15 *
16 * @author
17 * @since 2021-11-08
18 */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @TableName("DG_STAFF")
22 public class DgStaffDO implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 主键ID
28 */
29 @TableId(value = "BSM_STAFF", type = IdType.UUID)
30 private String bsmStaff;
31
32 /**
33 * 员工编码
34 */
35 @TableField("STAFF_ID")
36 private String staffId;
37
38 /**
39 * 员工名称
40 */
41 @TableField("STAFF_NAME")
42 private String staffName;
43
44 /**
45 * 登录密码
46 */
47 @TableField("STAFF_PASSWORD")
48 private String staffPassword;
49
50 /**
51 * 角色编码
52 */
53 @TableField("STAFF_ROLE_CODE")
54 private String staffRoleCode;
55
56 /**
57 * 角色名称
58 */
59 @TableField("STAFF_ROLE_NAME")
60 private String staffRoleName;
61
62 /**
63 * 部门编码
64 */
65 @TableField("STAFF_DEART_ID")
66 private String staffDeartId;
67
68 /**
69 * 部门名称
70 */
71 @TableField("STAFF_DEART_NAME")
72 private String staffDeartName;
73
74 /**
75 * 备注
76 */
77 @TableField("REMARK")
78 private String remark;
79
80
81 }
1 package com.pashanhoo.staff.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 员工登录表新增请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-08
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="员工登录表新增请求实体")
20 public class AddDgStaffRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24
25 /**
26 * 员工编码
27 */
28 @ApiModelProperty(name = "staffId", value = "员工编码")
29 private String staffId;
30
31 /**
32 * 员工名称
33 */
34 @ApiModelProperty(name = "staffName", value = "员工名称")
35 private String staffName;
36
37 /**
38 * 登录密码
39 */
40 @ApiModelProperty(name = "staffPassword", value = "登录密码")
41 private String staffPassword;
42
43 /**
44 * 角色编码
45 */
46 @ApiModelProperty(name = "staffRoleCode", value = "角色编码")
47 private String staffRoleCode;
48
49 /**
50 * 角色名称
51 */
52 @ApiModelProperty(name = "staffRoleName", value = "角色名称")
53 private String staffRoleName;
54
55 /**
56 * 部门编码
57 */
58 @ApiModelProperty(name = "staffDeartId", value = "部门编码")
59 private String staffDeartId;
60
61 /**
62 * 部门名称
63 */
64 @ApiModelProperty(name = "staffDeartName", value = "部门名称")
65 private String staffDeartName;
66
67 /**
68 * 备注
69 */
70 @ApiModelProperty(name = "remark", value = "备注")
71 private String remark;
72
73
74 }
1 package com.pashanhoo.staff.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 员工登录表明细实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-08
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="员工登录表明细实体")
20 public class DgStaffDetailVO implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 主键ID
26 */
27 @ApiModelProperty(name = "bsmStaff", value = "主键ID")
28 private String bsmStaff;
29
30 /**
31 * 员工编码
32 */
33 @ApiModelProperty(name = "staffId", value = "员工编码")
34 private String staffId;
35
36 /**
37 * 员工名称
38 */
39 @ApiModelProperty(name = "staffName", value = "员工名称")
40 private String staffName;
41
42 /**
43 * 登录密码
44 */
45 @ApiModelProperty(name = "staffPassword", value = "登录密码")
46 private String staffPassword;
47
48 /**
49 * 角色编码
50 */
51 @ApiModelProperty(name = "staffRoleCode", value = "角色编码")
52 private String staffRoleCode;
53
54 /**
55 * 角色名称
56 */
57 @ApiModelProperty(name = "staffRoleName", value = "角色名称")
58 private String staffRoleName;
59
60 /**
61 * 部门编码
62 */
63 @ApiModelProperty(name = "staffDeartId", value = "部门编码")
64 private String staffDeartId;
65
66 /**
67 * 部门名称
68 */
69 @ApiModelProperty(name = "staffDeartName", value = "部门名称")
70 private String staffDeartName;
71
72 /**
73 * 备注
74 */
75 @ApiModelProperty(name = "remark", value = "备注")
76 private String remark;
77
78
79 }
1 package com.pashanhoo.staff.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 员工登录表列表VO
12 * </p>
13 *
14 * @author
15 * @since 2021-11-08
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="员工登录表列表VO")
20 //TODO 该类属性暂时是完整的全部属性,需进行个性化的增删
21 public class DgStaffListVO implements Serializable {
22
23 private static final long serialVersionUID = 1L;
24
25 /**
26 * 主键ID
27 */
28 @ApiModelProperty(name = "bsmStaff", value = "主键ID")
29 private String bsmStaff;
30
31 /**
32 * 员工编码
33 */
34 @ApiModelProperty(name = "staffId", value = "员工编码")
35 private String staffId;
36
37 /**
38 * 员工名称
39 */
40 @ApiModelProperty(name = "staffName", value = "员工名称")
41 private String staffName;
42
43 /**
44 * 登录密码
45 */
46 @ApiModelProperty(name = "staffPassword", value = "登录密码")
47 private String staffPassword;
48
49 /**
50 * 角色编码
51 */
52 @ApiModelProperty(name = "staffRoleCode", value = "角色编码")
53 private String staffRoleCode;
54
55 /**
56 * 角色名称
57 */
58 @ApiModelProperty(name = "staffRoleName", value = "角色名称")
59 private String staffRoleName;
60
61 /**
62 * 部门编码
63 */
64 @ApiModelProperty(name = "staffDeartId", value = "部门编码")
65 private String staffDeartId;
66
67 /**
68 * 部门名称
69 */
70 @ApiModelProperty(name = "staffDeartName", value = "部门名称")
71 private String staffDeartName;
72
73 /**
74 * 备注
75 */
76 @ApiModelProperty(name = "remark", value = "备注")
77 private String remark;
78
79
80 }
1 package com.pashanhoo.staff.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8 import com.pashanhoo.common.PageInfo;
9
10 /**
11 * <p>
12 * 员工登录表列表查询请求实体
13 * </p>
14 *
15 * @author
16 * @since 2021-11-08
17 */
18 @Data
19 @EqualsAndHashCode(callSuper = false)
20 @ApiModel(value="员工登录表列表查询请求实体")
21 //TODO 初始查询条件是全部,需要根据情况自行删减
22 public class DgStaffSearchRequest extends PageInfo implements Serializable {
23
24 private static final long serialVersionUID = 1L;
25
26 /**
27 * 主键ID
28 */
29 @ApiModelProperty(name = "bsmStaff", value = "主键ID")
30 private String bsmStaff;
31
32 /**
33 * 员工编码
34 */
35 @ApiModelProperty(name = "staffId", value = "员工编码")
36 private String staffId;
37
38 /**
39 * 员工名称
40 */
41 @ApiModelProperty(name = "staffName", value = "员工名称")
42 private String staffName;
43
44 /**
45 * 登录密码
46 */
47 @ApiModelProperty(name = "staffPassword", value = "登录密码")
48 private String staffPassword;
49
50 /**
51 * 角色编码
52 */
53 @ApiModelProperty(name = "staffRoleCode", value = "角色编码")
54 private String staffRoleCode;
55
56 /**
57 * 角色名称
58 */
59 @ApiModelProperty(name = "staffRoleName", value = "角色名称")
60 private String staffRoleName;
61
62 /**
63 * 部门编码
64 */
65 @ApiModelProperty(name = "staffDeartId", value = "部门编码")
66 private String staffDeartId;
67
68 /**
69 * 部门名称
70 */
71 @ApiModelProperty(name = "staffDeartName", value = "部门名称")
72 private String staffDeartName;
73
74 /**
75 * 备注
76 */
77 @ApiModelProperty(name = "remark", value = "备注")
78 private String remark;
79
80
81 }
1 package com.pashanhoo.staff.entity.vo;
2
3 import java.io.Serializable;
4 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8
9 /**
10 * <p>
11 * 员工登录表修改请求实体
12 * </p>
13 *
14 * @author
15 * @since 2021-11-08
16 */
17 @Data
18 @EqualsAndHashCode(callSuper = false)
19 @ApiModel(value="员工登录表修改请求实体")
20 public class UpdateDgStaffRequest implements Serializable {
21
22 private static final long serialVersionUID = 1L;
23
24 /**
25 * 主键ID
26 */
27 @ApiModelProperty(name = "bsmStaff", value = "主键ID")
28 private String bsmStaff;
29
30 /**
31 * 员工编码
32 */
33 @ApiModelProperty(name = "staffId", value = "员工编码")
34 private String staffId;
35
36 /**
37 * 员工名称
38 */
39 @ApiModelProperty(name = "staffName", value = "员工名称")
40 private String staffName;
41
42 /**
43 * 登录密码
44 */
45 @ApiModelProperty(name = "staffPassword", value = "登录密码")
46 private String staffPassword;
47
48 /**
49 * 角色编码
50 */
51 @ApiModelProperty(name = "staffRoleCode", value = "角色编码")
52 private String staffRoleCode;
53
54 /**
55 * 角色名称
56 */
57 @ApiModelProperty(name = "staffRoleName", value = "角色名称")
58 private String staffRoleName;
59
60 /**
61 * 部门编码
62 */
63 @ApiModelProperty(name = "staffDeartId", value = "部门编码")
64 private String staffDeartId;
65
66 /**
67 * 部门名称
68 */
69 @ApiModelProperty(name = "staffDeartName", value = "部门名称")
70 private String staffDeartName;
71
72 /**
73 * 备注
74 */
75 @ApiModelProperty(name = "remark", value = "备注")
76 private String remark;
77
78
79 }
1 package com.pashanhoo.staff.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.staff.entity.DgStaffDO;
5
6 /**
7 * <p>
8 * 员工登录表 Mapper 接口
9 * </p>
10 *
11 * @author
12 * @since 2021-11-08
13 */
14 public interface DgStaffMapper extends BaseMapper<DgStaffDO> {
15
16 }
1 package com.pashanhoo.staff.service;
2
3
4 import com.baomidou.mybatisplus.extension.service.IService;
5 import com.pashanhoo.staff.entity.DgStaffDO;
6 import com.pashanhoo.staff.entity.vo.AddDgStaffRequest;
7 import com.pashanhoo.staff.entity.vo.DgStaffDetailVO;
8 import com.pashanhoo.staff.entity.vo.UpdateDgStaffRequest;
9 import com.pashanhoo.staff.entity.vo.DgStaffSearchRequest;
10 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
11
12 /**
13 * <p>
14 * 员工登录表 服务类
15 * </p>
16 *
17 * @author
18 * @since 2021-11-08
19 */
20 public interface DgStaffService extends IService<DgStaffDO> {
21 /**
22 * 新增记录
23 * @param request
24 * @return
25 */
26 boolean insertDgStaff(AddDgStaffRequest request);
27
28 /**
29 * 根据主键查询记录详情
30 * @param id
31 * @return
32 */
33 DgStaffDetailVO getDgStaffDetailById(String id);
34
35 /**
36 * 修改单条记录
37 * @param request
38 * @return
39 */
40 boolean updateDgStaff(UpdateDgStaffRequest request);
41
42 /**
43 * 根据条件进行列表查询
44 * @param request
45 * @return
46 */
47 Page searchDgStaffList(DgStaffSearchRequest request);
48 }
1 package com.pashanhoo.staff.service.impl;
2
3 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4 import com.pashanhoo.staff.entity.DgStaffConverter;
5 import com.pashanhoo.staff.entity.DgStaffDO;
6 import com.pashanhoo.staff.entity.vo.AddDgStaffRequest;
7 import com.pashanhoo.staff.entity.vo.DgStaffDetailVO;
8 import com.pashanhoo.staff.entity.vo.UpdateDgStaffRequest;
9 import com.pashanhoo.staff.entity.vo.DgStaffSearchRequest;
10 import com.pashanhoo.staff.mapper.DgStaffMapper;
11 import com.pashanhoo.staff.service.DgStaffService;
12 import org.springframework.beans.factory.annotation.Autowired;
13 import org.springframework.stereotype.Service;
14
15 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
16 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
17
18 /**
19 * <p>
20 * 员工登录表 服务实现类
21 * </p>
22 *
23 * @author
24 * @since 2021-11-08
25 */
26 @Service
27 public class DgStaffServiceImpl extends ServiceImpl<DgStaffMapper, DgStaffDO> implements DgStaffService {
28
29 @Autowired
30 private DgStaffConverter dgstaffConverter;
31
32 @Autowired
33 private DgStaffMapper dgstaffMapper;
34
35 /**
36 * 新增记录
37 * @param request
38 * @return
39 */
40 @Override
41 public boolean insertDgStaff(AddDgStaffRequest request) {
42 DgStaffDO dgstaffDO = dgstaffConverter.addRequest2DO(request);
43 return this.save(dgstaffDO);
44 }
45
46 /**
47 * 根据主键查询记录详情
48 * @param id
49 * @return
50 */
51 @Override
52 public DgStaffDetailVO getDgStaffDetailById(String id) {
53 DgStaffDO dgstaffDO = this.getById(id);
54 return dgstaffConverter.do2DetailVO(dgstaffDO);
55 }
56
57 /**
58 * 修改单条记录
59 * @param request
60 * @return
61 */
62 @Override
63 public boolean updateDgStaff(UpdateDgStaffRequest request) {
64 DgStaffDO dgstaffDO = dgstaffConverter.updateRequest2DO(request);
65 return this.updateById(dgstaffDO);
66 }
67
68 /**
69 * 根据条件进行列表查询
70 * @param request
71 * @return
72 */
73 @Override
74 public Page searchDgStaffList(DgStaffSearchRequest request) {
75 Page<DgStaffDO> pageParam = new Page<DgStaffDO>(request.getCurrentPage(), request.getPageSize());
76 QueryWrapper<DgStaffDO> wrapper = new QueryWrapper<>();
77 wrapper.eq(request.getStaffId()!=null && !"".equals(request.getStaffId()),"STAFF_ID",request.getStaffId());
78 wrapper.eq(request.getStaffPassword()!=null && !"".equals(request.getStaffPassword()),"STAFF_PASSWORD",request.getStaffPassword());
79 Page page = this.page(pageParam, wrapper);
80 //将查询出来的DO List转为 ListVO List并重新设置到page对象中,并返回page对象
81 return page.setRecords(dgstaffConverter.doList2ListVOList(page.getRecords()));
82 }
83
84 }
1 package com.pashanhoo.zhj.controller;
2
3 import com.pashanhoo.common.Result;
4 import com.pashanhoo.zhj.service.ZhjDatasSynService;
5 import io.swagger.annotations.Api;
6 import io.swagger.annotations.ApiOperation;
7 import io.swagger.annotations.ApiParam;
8 import org.springframework.beans.factory.annotation.Autowired;
9 import org.springframework.web.bind.annotation.PostMapping;
10 import org.springframework.web.bind.annotation.RequestMapping;
11 import org.springframework.web.bind.annotation.RequestParam;
12 import org.springframework.web.bind.annotation.RestController;
13
14 @RestController
15 @RequestMapping("/zhj/")
16 @Api(tags = "智慧局信息同步相关接口")
17 public class SynZhjInfoController {
18
19 @Autowired
20 private ZhjDatasSynService zhjDatasSynService;
21
22 @PostMapping("ZhjDatasSynInfo")
23 @ApiOperation("定时智慧局数据同步接口")
24 public Result ZhjDatasSynInfo() {
25 zhjDatasSynService.send_bdcYwInfo();
26 return Result.ok();
27 }
28 @PostMapping("synZdInfoByywh")
29 @ApiOperation("手动执行智慧局数据同步接口")
30 public Result synZdInfoByywh(@ApiParam("业务号")@RequestParam String ywh) {
31 zhjDatasSynService.synZdInfoByywh(ywh);
32 return Result.ok();
33 }
34 @PostMapping("synHInfoByYwh")
35 @ApiOperation("手动执行智慧局数据同步接口")
36 public Result synHInfoByYwh(@ApiParam("业务号")@RequestParam String ywh) {
37 zhjDatasSynService.synHInfoByYwh(ywh);
38 return Result.ok();
39 }
40 @PostMapping("synQSZTInfoByYwh")
41 @ApiOperation("手动执行智慧局数据同步接口")
42 public Result synQSZTInfoByYwh(@ApiParam("业务号")@RequestParam String ywh) {
43 zhjDatasSynService.synQSZTInfoByYwh(ywh);
44 return Result.ok();
45 }
46
47 }
1 package com.pashanhoo.zhj.entity;
2
3 import com.baomidou.mybatisplus.annotation.IdType;
4 import com.baomidou.mybatisplus.annotation.TableField;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9
10 import java.io.Serializable;
11 import java.util.Date;
12
13 @Data
14 @EqualsAndHashCode(callSuper = false)
15 @TableName("REG_BUS_BDCQZSDJXX")
16 public class RegBusBdcqzsdjxxDo implements Serializable {
17 private static final long serialVersionUID = 1L;
18 /**
19 * 主键
20 */
21 @TableId(value = "ID", type = IdType.UUID)
22 private String id;
23 /**
24 * 业务号
25 */
26 @TableField("YWH")
27 private String ywh;
28 /**
29 * 不动产权证号
30 */
31 @TableField("BDCQZH")
32 private String bdcqzh;
33 /**
34 * 不动产权证编号
35 */
36 @TableField("BDCQZBH")
37 private String bdcqzbh;
38 /**
39 * 印刷序列号
40 */
41 @TableField("YSXLH")
42 private String ysxlh;
43 /**
44 * 登簿时间
45 */
46 @TableField("DBSJ")
47 private String dbsj;
48 /**
49 * 权利人名称
50 */
51 @TableField("QLRMC")
52 private String qlrmc;
53 /**
54 * 共有情况
55 */
56 @TableField("GYQK")
57 private String gyqk;
58 /**
59 * 坐落
60 */
61 @TableField("ZL")
62 private String zl;
63 /**
64 * 宗地代码
65 */
66 @TableField("ZDDM")
67 private String zddm;
68 /**
69 * 不动产单元号
70 */
71 @TableField("BDCDYH")
72 private String bdcdyh;
73 /**
74 * 权利类型
75 */
76 @TableField("QLLX")
77 private String qllx;
78 /**
79 * 权利性质
80 */
81 @TableField("QLXZ")
82 private String qlxz;
83 /**
84 * 用途
85 */
86 @TableField("YT")
87 private String yt;
88 /**
89 * 面积
90 */
91 @TableField("MJ")
92 private String mj;
93 /**
94 * 使用期限
95 */
96 @TableField("SYQX")
97 private String syqx;
98 /**
99 * 权利其他状况
100 */
101 @TableField("QLQTZK")
102 private String qlqtzk;
103 /**
104 * 附记
105 */
106 @TableField("FJ")
107 private String fj;
108 /**
109 * 抵押登记信息
110 */
111 @TableField("DYDJXX")
112 private String dydjxx;
113 /**
114 * 解除抵押登记信息
115 */
116 @TableField("JCDYDJXX")
117 private String jcdydjxx;
118 /**
119 * 查封情况
120 */
121 @TableField("CFQK")
122 private String cfqk;
123 /**
124 * 解除查封
125 */
126 @TableField("JCCF")
127 private String jccf;
128 /**
129 * 图号
130 */
131 @TableField("TH")
132 private String th;
133 /**
134 * 批文号
135 */
136 @TableField("PWH")
137 private String pwh;
138 /**
139 * 划拨价款
140 */
141 @TableField("HBJK")
142 private String hbjk;
143 /**
144 * 划拨合同号
145 */
146 @TableField("HBHTH")
147 private String hbhth;
148 /**
149 * 发证时间
150 */
151 @TableField("FZSJ")
152 private String fzsj;
153 /**
154 * 终止时间
155 */
156 @TableField("ZZSJ")
157 private String zzsj;
158 /**
159 * 登记类型
160 */
161 @TableField("DJLX")
162 private String djlx;
163 /**
164 * 当前土地或者房屋登记状态
165 */
166 @TableField("STATUS")
167 private String status;
168 /**
169 * 是否注销 分割合并后原数据注销
170 */
171 @TableField("ISLOGOUT")
172 private String islogout;
173 /**
174 * 0:正常办理,1:分割合并变更更正附带确权产生数据
175 */
176 @TableField("ISFDSJ")
177 private Integer isfdsj;
178 /**
179 * 是否历史数据手工录入
180 */
181 @TableField("ISHISTORY")
182 private String ishistory;
183 /**
184 * 是否打印出证
185 */
186 @TableField("ISPRINT")
187 private String isprint;
188 /**
189 * 确权类型
190 */
191 @TableField("RIGHTS")
192 private String rights;
193 /**
194 * 创建者
195 */
196 @TableField("CREATE_BY")
197 private String create_by;
198 /**
199 * 创建日期
200 */
201 @TableField("CREATE_DATE")
202 private Date create_date;
203 /**
204 * 更新者
205 */
206 @TableField("UPDATE_BY")
207 private String update_by;
208 /**
209 * 更新日期
210 */
211 @TableField("UPDATE_DATE")
212 private Date update_date;
213 /**
214 * 备注
215 */
216 @TableField("REMARKS")
217 protected String remarks;
218 /**
219 * 删除标记(0:正常;1:删除;2:审核)
220 */
221 @TableField("DEL_FLAG")
222 protected String del_flag;
223 /**
224 * 上手id(原业务id)
225 */
226 @TableField("OLDID")
227 private String oldid;
228
229
230
231
232
233
234 }
1 package com.pashanhoo.zhj.entity;
2
3 import com.baomidou.mybatisplus.annotation.IdType;
4 import com.baomidou.mybatisplus.annotation.TableField;
5 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9
10 import java.io.Serializable;
11 import java.util.Date;
12
13 @Data
14 @EqualsAndHashCode(callSuper = false)
15 @TableName("SYN_ZHJINFO")
16 public class SynZhjInfoDo implements Serializable {
17
18 private static final long serialVersionUID = 1L;
19 /**
20 * 主键
21 */
22 @TableId(value = "ID", type = IdType.UUID)
23 private String id;
24 /**
25 * 业务号
26 */
27 @TableField("YWH")
28 private String ywh;
29 /**
30 * 宗地表同步状态0:未同步 1:已同步
31 */
32 @TableField("ZD_STATE")
33 private String zd_state;
34 /**
35 * 户表同步状态0:未同步 1:已同步
36 */
37 @TableField("H_STATE")
38 private String h_state;
39 /**
40 * 户权属表同步状态0:未同步 1:已同步
41 */
42 @TableField("HQS_STATE")
43 private String hqs_state;
44 /**
45 * 创建者
46 */
47 @TableField("CREATE_BY")
48 private String create_by;
49 /**
50 * 创建日期
51 */
52 @TableField("CREATE_DATE")
53 private Date create_date;
54 /**
55 * 更新者
56 */
57 @TableField("UPDATE_BY")
58 private String update_by;
59 /**
60 * 更新日期
61 */
62 @TableField("UPDATE_DATE")
63 private Date update_date;
64 /**
65 * 删除标记(0:正常;1:删除;2:审核)
66 */
67 @TableField("DEL_FLAG")
68 protected String del_flag;
69
70
71 }
1 package com.pashanhoo.zhj.mapper;
2
3
4 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 import com.pashanhoo.zhj.entity.RegBusBdcqzsdjxxDo;
6 import com.pashanhoo.zhj.entity.SynZhjInfoDo;
7 import org.apache.ibatis.annotations.Param;
8
9 import java.util.List;
10 import java.util.Map;
11
12 public interface RegBusBdcqzsdjxxMapper extends BaseMapper<RegBusBdcqzsdjxxDo> {
13
14 /**
15 * 批量业务号查询登记信息表数据
16 * @param selectAllListInfo
17 * @return
18 */
19 List<RegBusBdcqzsdjxxDo> getZsdjInfoList(List<SynZhjInfoDo> selectAllListInfo);
20 /**
21 * 业务号查询登记信息表数据
22 * @param ywh
23 * @return
24 */
25 List<RegBusBdcqzsdjxxDo> getZsdjInfoListByYwh(String ywh);
26 /**
27 * 根据宗地代码查询宗地信息
28 * @param regBusBdcqzsdjxxDo
29 * @return
30 */
31 public List<Map> getZdInfoByZddm(RegBusBdcqzsdjxxDo regBusBdcqzsdjxxDo);
32 /**
33 * 根据宗地代码查询户信息
34 * @param regBusBdcqzsdjxxDo
35 * @return
36 */
37 public List<Map> getHQSInfoByZddm(RegBusBdcqzsdjxxDo regBusBdcqzsdjxxDo);
38
39 /**
40 * 根据宗地代码查询户权属状态信息
41 * @param regBusBdcqzsdjxxDo
42 * @return
43 */
44 public List<Map> getQSZTInfoByZddm(RegBusBdcqzsdjxxDo regBusBdcqzsdjxxDo);
45
46 /**
47 * 查询所有需要创建电子证照并且已经登簿的业务信息
48 * @return
49 */
50 public List<Map> getBdcqzsjbxxInfo();
51
52 /**
53 * 查询所有需要创建电子证照并且已经登簿的业务信息
54 * @return
55 */
56 public List<Map> getBdcqzsjbxxInfoByYwh(String ywh);
57
58 public List<Map> getUserInfo();
59
60 public void updateBdcqzsjbxxInfo(String id);
61
62 public Map getQlrInfoByYwh(String ywh);
63
64 public String getQlrInfoByYwhAndqlr(@Param("ywh") String ywh, @Param("qlrmc") String qlrmc);
65
66 public Map getBdcqzsJbxxById(String id);
67
68 public String getInfoByValue(@Param("value") String value, @Param("type") String type);
69
70 Map getRightsInfo(@Param("bdcdyh")String bdcdyh);
71
72 Map getDyqqInfo(@Param("ywh")String ywh,@Param("bdcdyh")String bdcdyh);
73
74 String getHtbhInfo(@Param("ywh")String ywh);
75
76
77 Map getBdcjbxxInfo(@Param("bdcdyh")String bdcdyh);
78
79 Map getJbxxInfoByYwhAndBdcdyh(@Param("ywh")String ywh,@Param("bdcdyh")String bdcdyh);
80
81 Map getJbxxById(@Param("id")String id);
82
83 Map getZdjbxxByZddm(@Param("zddm")String zddm);
84
85 Map getZrzInfo(@Param("bdcdyh")String bdcdyh);
86
87 Map getHInfo(@Param("bdcdyh")String bdcdyh);
88
89
90
91 }
1 package com.pashanhoo.zhj.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import com.pashanhoo.zhj.entity.SynZhjInfoDo;
5
6
7
8 import java.util.List;
9
10 public interface SynZhjInfoMapper extends BaseMapper<SynZhjInfoDo> {
11
12 List<SynZhjInfoDo> selectAllInfo();
13
14 void updatezdzt(String ywh);
15
16 void updateHzt(String ywh);
17
18 void updateHqszt(String ywh);
19
20 }
1 package com.pashanhoo.zhj.service;
2
3 import com.baomidou.mybatisplus.extension.service.IService;
4 import com.pashanhoo.zhj.entity.RegBusBdcqzsdjxxDo;
5
6
7
8 public interface ZhjDatasSynService extends IService<RegBusBdcqzsdjxxDo> {
9
10 public void send_bdcYwInfo();
11
12 public void synZdInfoByywh(String ywh);
13
14 public void synHInfoByYwh(String ywh);
15
16 public void synQSZTInfoByYwh(String ywh);
17
18
19
20 }
1 package com.pashanhoo.zhj.service.impl;
2
3 import com.alibaba.fastjson.JSONObject;
4 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5 import com.pashanhoo.zhj.entity.RegBusBdcqzsdjxxDo;
6 import com.pashanhoo.zhj.entity.SynZhjInfoDo;
7 import com.pashanhoo.zhj.mapper.RegBusBdcqzsdjxxMapper;
8 import com.pashanhoo.zhj.mapper.SynZhjInfoMapper;
9 import com.pashanhoo.zhj.service.ZhjDatasSynService;
10 import org.slf4j.Logger;
11 import org.slf4j.LoggerFactory;
12 import org.springframework.beans.factory.annotation.Autowired;
13 import org.springframework.stereotype.Service;
14
15 import java.io.*;
16 import java.net.HttpURLConnection;
17 import java.net.URL;
18 import java.net.URLEncoder;
19 import java.util.HashMap;
20 import java.util.List;
21 import java.util.Map;
22
23 /**
24 * <p>
25 * 案卷基本信息 服务实现类
26 * </p>
27 *
28 * @author
29 * @since 2021-11-05
30 */
31 @Service
32 public class ZhjDatasSynServiceImpl extends ServiceImpl<RegBusBdcqzsdjxxMapper, RegBusBdcqzsdjxxDo> implements ZhjDatasSynService {
33
34 private static Logger logger = LoggerFactory.getLogger(ZhjDatasSynServiceImpl.class);
35 @Autowired
36 private SynZhjInfoMapper synZhjInfoMapper;
37 @Autowired
38 private RegBusBdcqzsdjxxMapper regBusBdcqzsdjxxMapper;
39 //智慧局内网ip
40 private String zhjurl="http://172.16.56.10:7050";
41 //认证令牌
42 private String appkey="3cd832c411238faa1df46d532a21bfcd";
43 private String appSecret="ee7612083f63c2ce0d016c2aefd0a8d2";
44
45 public void send_bdcYwInfo() {
46 List<SynZhjInfoDo> selectAllListInfo=synZhjInfoMapper.selectAllInfo();
47 if(selectAllListInfo!=null && selectAllListInfo.size()>0){
48 final List<RegBusBdcqzsdjxxDo> zsdjInfoList=regBusBdcqzsdjxxMapper.getZsdjInfoList(selectAllListInfo);
49 if(zsdjInfoList!=null && zsdjInfoList.size()>0){
50 String url=zhjurl+"/dclp/hzapi/token?appKey="+appkey+"&appSecret="+appSecret;
51 Map map1=doGetForNew(url);
52 if(map1!=null && (Integer)map1.get("code")==200){
53 final Map map2= (Map) map1.get("data");
54 final String token= (String) map2.get("token");
55 //组装宗地基本信息
56 new Thread(new Runnable() {
57 @Override
58 public void run() {
59 System.out.println("===============当前线程是:"+Thread.currentThread().getName());
60 synZdInfo(zsdjInfoList,token);
61 }
62 }).start();
63
64 //组装户信息
65 new Thread(new Runnable() {
66 @Override
67 public void run() {
68 System.out.println("===============当前线程是:"+Thread.currentThread().getName());
69 synHInfo(zsdjInfoList,token);
70 }
71 }).start();
72
73 //组装权属状态
74 new Thread(new Runnable() {
75 @Override
76 public void run() {
77 System.out.println("===============当前线程是:"+Thread.currentThread().getName());
78 synQSZTInfo(zsdjInfoList,token);
79 }
80 }).start();
81 }
82 }
83 }
84 }
85
86 /**
87 *根据业务通过swagger接口手动推送宗地基本信息
88 * @param ywh
89 * @param
90 */
91 public void synZdInfoByywh(String ywh){
92 List<RegBusBdcqzsdjxxDo> zsdjInfoList =regBusBdcqzsdjxxMapper.getZsdjInfoListByYwh(ywh);
93 if(zsdjInfoList!=null && zsdjInfoList.size()>0){
94 String url=zhjurl+"/dclp/hzapi/token?appKey="+appkey+"&appSecret="+appSecret;
95 Map map1=doGetForNew(url);
96 if(map1!=null && (Integer)map1.get("code")==200){
97 Map map2= (Map) map1.get("data");
98 String token= (String) map2.get("token");
99 synZdInfo(zsdjInfoList,token);
100 }
101 }
102 }
103
104 /**
105 * 给智慧局推送宗地基本信息
106 * @param zsdjInfoList
107 * @param token
108 */
109 public void synZdInfo(List<RegBusBdcqzsdjxxDo> zsdjInfoList,String token) {
110 try{
111 if(zsdjInfoList!=null && zsdjInfoList.size()>0){
112 for (int i = 0; i < zsdjInfoList.size(); i++) {
113 RegBusBdcqzsdjxxDo busBdcqzsdjxxDo= zsdjInfoList.get(i);
114 List<Map> zdjglist = regBusBdcqzsdjxxMapper.getZdInfoByZddm(busBdcqzsdjxxDo);
115 if(zdjglist!=null && zdjglist.size()>0){
116 for (int j = 0; j < zdjglist.size(); j++) {
117 Map map=zdjglist.get(j);
118 StringBuilder params = new StringBuilder();
119 params.append("?").append("DJQDM=").append(map.get("DJQDM")).append("&")
120 .append("DJQMC=").append(URLEncoder.encode((String) map.get("DJQMC"),"UTF-8")).append("&")
121 .append("DJZQDM=").append(map.get("DJZQDM")).append("&")
122 .append("DJZQMC=").append(URLEncoder.encode((String) map.get("DJZQMC"),"UTF-8")).append("&")
123 .append("BDCDYH=").append(map.get("BDCDYH")).append("&")
124 .append("ZL=").append(URLEncoder.encode((String) map.get("ZL"),"UTF-8")).append("&")
125 .append("ZDMJ=").append(map.get("ZDMJ")).append("&")
126 .append("YT=").append(URLEncoder.encode((String) map.get("YT"),"UTF-8"));
127 String url1=zhjurl+"/dclp/hzapi/ZDJGMS"+params.toString();
128 Integer code=doPostForNew(url1,"", token);
129 if(code==200){
130 synZhjInfoMapper.updatezdzt(busBdcqzsdjxxDo.getYwh());
131 }
132 }
133 }
134
135 }
136 }
137 }catch (Exception ex){
138 ex.printStackTrace();
139 }
140
141 }
142 /**
143 * 根据业务通过swagger接口手动推送户信息
144 * @param ywh
145 * @param
146 */
147 public void synHInfoByYwh(String ywh){
148 List<RegBusBdcqzsdjxxDo> zsdjInfoList =regBusBdcqzsdjxxMapper.getZsdjInfoListByYwh(ywh);
149 if(zsdjInfoList!=null && zsdjInfoList.size()>0){
150 String url=zhjurl+"/dclp/hzapi/token?appKey="+appkey+"&appSecret="+appSecret;
151 Map map1=doGetForNew(url);
152 if(map1!=null && (Integer)map1.get("code")==200){
153 Map map2= (Map) map1.get("data");
154 String token= (String) map2.get("token");
155 synHInfo(zsdjInfoList,token);
156 }
157 }
158 }
159 /**
160 * 给智慧局推送户基本信息
161 * @param zsdjInfoList
162 * @param token
163 */
164 public void synHInfo(List<RegBusBdcqzsdjxxDo> zsdjInfoList,String token){
165 try{
166 if(zsdjInfoList!=null && zsdjInfoList.size()>0){
167 for (int i = 0; i < zsdjInfoList.size(); i++) {
168 RegBusBdcqzsdjxxDo busBdcqzsdjxxDo= zsdjInfoList.get(i);
169 List<Map> hlist = regBusBdcqzsdjxxMapper.getHQSInfoByZddm(busBdcqzsdjxxDo);
170 if(hlist!=null && hlist.size()>0){
171 for (int j = 0; j < hlist.size(); j++) {
172 Map map=hlist.get(j);
173 StringBuilder params = new StringBuilder();
174 params.append("?").append("BDCDYH=").append(map.get("BDCDYH")).append("&")
175 .append("ZRZH=").append(map.get("ZRZH")).append("&")
176 .append("CH=").append(map.get("CH")).append("&")
177 .append("ZL=").append(URLEncoder.encode((String) map.get("ZL"),"UTF-8")).append("&")
178 .append("SJCS=").append(map.get("SJCS")).append("&")
179 .append("SHBW=").append(URLEncoder.encode((String) map.get("SHBW"),"UTF-8")).append("&")
180 .append("HX=").append(map.get("HX")).append("&")
181 .append("HXJG=").append(map.get("HXJG")).append("&")
182 .append("FWYT1=").append(map.get("FWYT1")).append("&")
183 .append("SCJZMJ=").append(map.get("SCJZMJ")).append("&")
184 .append("SCTNJZMJ=").append(map.get("SCTNJZMJ")).append("&")
185 .append("SCDXBFJZMJ=").append(map.get("SCDXBFJZMJ")).append("&")
186 .append("FTTDMJ=").append(map.get("FTTDMJ")).append("&")
187 .append("FWLX=").append(map.get("FWLX")).append("&")
188 .append("FWXZ=").append(map.get("FWXZ")).append("&")
189 .append("QLLX=").append(map.get("QLLX")).append("&")
190 .append("DJLX=").append(map.get("DJLX")).append("&")
191 .append("SYQMJ=").append(map.get("SYQMJ")).append("&")
192 .append("SYQQSSJ=").append(map.get("SYQQSSJ")).append("&")
193 .append("SYQJSSJ=").append(map.get("SYQJSSJ")).append("&")
194 .append("BDCQZH=").append(URLEncoder.encode((String) map.get("BDCQZH"),"UTF-8")).append("&")
195 .append("QXDM=").append(map.get("QXDM")).append("&")
196 .append("DJSJ=").append(map.get("DJSJ")).append("&")
197 .append("QSZT=").append(map.get("QSZT")).append("&")
198 .append("ZT=").append(map.get("ZT"));
199
200 String url1=zhjurl+"/dclp/hzapi/HQSJGMS"+params.toString();
201 Integer code=doPostForNew(url1,"", token);
202 if(code==200){
203 synZhjInfoMapper.updatezdzt(busBdcqzsdjxxDo.getYwh());
204 }
205 }
206 }
207 }
208 }
209 }catch (Exception ex){
210 ex.printStackTrace();
211 }
212
213 }
214
215 /**
216 * 给智慧局推送权属状态基本信息
217 * @param ywh
218 * @param
219 */
220 public void synQSZTInfoByYwh(String ywh){
221 List<RegBusBdcqzsdjxxDo> zsdjInfoList =regBusBdcqzsdjxxMapper.getZsdjInfoListByYwh(ywh);
222 if(zsdjInfoList!=null && zsdjInfoList.size()>0){
223 String url=zhjurl+"/dclp/hzapi/token?appKey="+appkey+"&appSecret="+appSecret;
224 Map map1=doGetForNew(url);
225 if(map1!=null && (Integer)map1.get("code")==200){
226 Map map2= (Map) map1.get("data");
227 String token= (String) map2.get("token");
228 synQSZTInfo(zsdjInfoList,token);
229 }
230 }
231 }
232 /**
233 * 给智慧局推送权属状态基本信息
234 * @param zsdjInfoList
235 * @param token
236 */
237 public void synQSZTInfo(List<RegBusBdcqzsdjxxDo> zsdjInfoList,String token){
238 if(zsdjInfoList!=null && zsdjInfoList.size()>0){
239 for (int i = 0; i < zsdjInfoList.size(); i++) {
240 RegBusBdcqzsdjxxDo busBdcqzsdjxxDo= zsdjInfoList.get(i);
241 List<Map> qsztList = regBusBdcqzsdjxxMapper.getQSZTInfoByZddm(busBdcqzsdjxxDo);
242 if(qsztList!=null && qsztList.size()>0){
243 for (int j = 0; j < qsztList.size(); j++) {
244 Map map=qsztList.get(j);
245 StringBuilder params = new StringBuilder();
246 params.append("?").append("BDCDYH=").append(map.get("BDCDYH")).append("&")
247 .append("DYQSZT=").append(map.get("DYQSZT")).append("&")
248 .append("YYQSZT=").append(map.get("YYQSZT")).append("&")
249 .append("CFQSZT=").append(map.get("CFQSZT")).append("&")
250 .append("YGQSZT=").append(map.get("YGQSZT"));
251 String url1=zhjurl+"/dclp/hzapi/QSZT"+params.toString();
252 Integer code=doPostForNew(url1,"", token);
253 if(code==200){
254 synZhjInfoMapper.updatezdzt(busBdcqzsdjxxDo.getYwh());
255 }
256 }
257 }
258 }
259 }
260 }
261
262 public Map doGetForNew(String url) {
263 logger.info("http request url:" + url);
264 BufferedReader in = null;
265 String result = "";
266 Map jsonObject=new HashMap();
267 try{
268 URL url1=new URL(url);
269 HttpURLConnection conn= (HttpURLConnection) url1.openConnection();
270 conn.setRequestMethod("GET");
271 conn.setRequestProperty("accept","*/*");
272 conn.setRequestProperty("connection","Keep-Alive");
273 conn.setRequestProperty("Charset", "utf-8");
274 conn.setDoInput(true);
275 conn.setDoOutput(false);
276 //x-qys-signature生成方式:Md5(AppToken + AppSecret + timestamp),获取32位小写值
277 conn.connect();
278 in = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF-8"));
279 String line;
280 while ((line = in.readLine()) != null) {
281 result += line;
282 }
283 jsonObject=JSONObject.parseObject(result,Map.class);
284 logger.info("http request back:" + jsonObject);
285 }catch (Exception ex){
286 logger.info("发送 POST 请求出现异常!" + ex);
287 ex.printStackTrace();
288 }finally {
289 try {
290 if (in != null) {
291 in.close();
292 }
293 } catch (IOException ex) {
294 ex.printStackTrace();
295 }
296 }
297 return jsonObject;
298 }
299
300
301 public Integer doPostForNew(String url, String params,String token) {
302 logger.info("http request url:" + url);
303 logger.info("http request params:" + params);
304 PrintWriter out = null;
305 BufferedReader in = null;
306 String result = "";
307 Map jsonObject=new HashMap();
308 Integer code=200;
309 try{
310 URL url1=new URL(url);
311 HttpURLConnection conn= (HttpURLConnection) url1.openConnection();
312 conn.setRequestMethod("POST");
313 conn.setRequestProperty("accept","*/*");
314 conn.setRequestProperty("connection","Keep-Alive");
315 conn.setDoInput(true);
316 conn.setDoOutput(true);
317 conn.setRequestProperty("Content-Type", "application/json;charset=utf-8");
318 conn.setRequestProperty("X-Access-Token", token);
319 out=new PrintWriter(new OutputStreamWriter(conn.getOutputStream(),"utf-8"));
320 out.print(params);
321 out.flush();
322 in = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF-8"));
323 String line;
324 while ((line = in.readLine()) != null) {
325 result += line;
326 }
327 jsonObject=JSONObject.parseObject(result,Map.class);
328 logger.info("http request back:" + jsonObject);
329 code= (Integer) jsonObject.get("code");
330 }catch (Exception ex){
331 logger.info("发送 POST 请求出现异常!" + ex);
332 ex.printStackTrace();
333 code=-1;
334 }finally {
335 try {
336 if (out != null) {
337 out.close();
338 }
339 if (in != null) {
340 in.close();
341 }
342 } catch (IOException ex) {
343 ex.printStackTrace();
344 }
345 }
346 return code;
347 }
348
349
350
351 }
1 server:
2 port: 8866
3 servlet:
4 session:
5 timeout: 43200
6
7 spring:
8 servlet:
9 multipart:
10 maxFileSize: 10MB
11 maxRequestSize: 10MB
12 application:
13 name: archive-system
14 profiles:
15 active: dev
16 jackson:
17 time-zone: GMT+8
18 date-format: yyyy-MM-dd HH:mm:ss
19 default-property-inclusion: always
20 datasource:
21 dynamic:
22 primary: master
23 datasource:
24 master:
25 url: jdbc:oracle:thin:@192.168.2.218:1521:orcl
26 driver-class-name: oracle.jdbc.driver.OracleDriver
27 username: bdcdangan
28 password: bdcdangan
29 slave_1:
30 url: jdbc:oracle:thin:@192.168.2.218:1521:orcl
31 driver-class-name: oracle.jdbc.driver.OracleDriver
32 username: bdcdj
33 password: bdcdj
34
35 mybatis-plus:
36 mapper-locations: classpath:mapper/**/*.xml
37 typeAliasesPackage: com.pashanhoo
38 global-config:
39 #主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
40 id-type: 2
41 #字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
42 field-strategy: 1
43 #驼峰下划线转换
44 db-column-underline: true
45 #刷新mapper 调试神器
46 refresh-mapper: true
47 #数据库大写下划线转换
48 #capital-mode: true
49 #序列接口实现类配置
50 #key-generator: com.baomidou.springboot.xxx
51 #逻辑删除配置
52 logic-delete-value: -1
53 logic-not-delete-0: 0
54 #自定义填充策略接口实现
55 #meta-object-handler: com.baomidou.springboot.xxx
56 #自定义SQL注入器
57 # sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector
58 configuration:
59 map-underscore-to-camel-case: true
60 cache-enabled: false
61 call-setters-on-nulls: true
62 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
63
64 management:
65 endpoints:
66 web:
67 exposure:
68 include: "*"
69
70 logging:
71 config: "classpath:logback-spring.xml"
72
73 minio:
74 params:
75 type: http://
76 bucket: archive
77 endpoint: 192.168.2.218
78 port: 8989
79 accessKeyId: minioadmin
80 accessKeySecret: minioadmin
1 server:
2 port: 8011
3 servlet:
4 session:
5 timeout: 43200
6
1 spring: 7 spring:
2 profiles: 8 servlet:
3 active: @profile.active@ 9 multipart:
10 maxFileSize: 10MB
11 maxRequestSize: 10MB
12 application:
13 name: hzbdcsyn
14 jackson:
15 time-zone: GMT+8
16 date-format: yyyy-MM-dd HH:mm:ss
17 default-property-inclusion: always
18 datasource:
19 dynamic:
20 primary: master
21 datasource:
22 master:
23 url: jdbc:oracle:thin:@172.16.56.21:1521:orcl
24 driver-class-name: oracle.jdbc.driver.OracleDriver
25 username: regs
26 password: root1234
27
28 mybatis-plus:
29 mapper-locations: classpath:mapper/**/*.xml
30 typeAliasesPackage: com.pashanhoo
31 global-config:
32 #主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
33 id-type: 2
34 #字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
35 field-strategy: 1
36 #驼峰下划线转换
37 db-column-underline: true
38 #刷新mapper 调试神器
39 refresh-mapper: true
40 #数据库大写下划线转换
41 #capital-mode: true
42 #序列接口实现类配置
43 #key-generator: com.baomidou.springboot.xxx
44 #逻辑删除配置
45 logic-delete-value: -1
46 logic-not-delete-0: 0
47 #自定义填充策略接口实现
48 #meta-object-handler: com.baomidou.springboot.xxx
49 #自定义SQL注入器
50 # sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector
51 configuration:
52 map-underscore-to-camel-case: true
53 cache-enabled: false
54 call-setters-on-nulls: true
55 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
56 app:
57 hostUrl: http://172.16.56.41:9182
58 bdcdjzmlc: 2890537670326468622
59 bdcqzslc: 2890537800123400234
60 AppToken: OAduCx5qJD
61 AppSecret: DifsZNwDnamuRh9jS0gSOTJFvmmKtT
62
63
64 management:
65 endpoints:
66 web:
67 exposure:
68 include: "*"
69
70 logging:
71 config: "classpath:logback-spring.xml"
72
73
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
10 10
11 <contextName>logback</contextName> 11 <contextName>logback</contextName>
12 <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义变量后,可以使“${}”来使用变量。 --> 12 <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义变量后,可以使“${}”来使用变量。 -->
13 <property name="log.path" value="/home/project/logs"/> 13 <property name="log.path" value="D:/home/project/logs"/>
14 14
15 <!-- 彩色日志 --> 15 <!-- 彩色日志 -->
16 <!-- 彩色日志依赖的渲染类 --> 16 <!-- 彩色日志依赖的渲染类 -->
...@@ -160,7 +160,7 @@ ...@@ -160,7 +160,7 @@
160 第一种把<root level="info">改成<root level="DEBUG">这样就会打印sql,不过这样日志那边会出现很多其他消息 160 第一种把<root level="info">改成<root level="DEBUG">这样就会打印sql,不过这样日志那边会出现很多其他消息
161 第二种就是单独给dao下目录配置debug模式,代码如下,这样配置sql语句会打印,其他还是正常info级别: 161 第二种就是单独给dao下目录配置debug模式,代码如下,这样配置sql语句会打印,其他还是正常info级别:
162 --> 162 -->
163 <!--<logger name="com.pashanhoo.*" level="DEBUG" />--> 163
164 164
165 <!--开发环境:打印控制台--> 165 <!--开发环境:打印控制台-->
166 <springProfile name="dev"> 166 <springProfile name="dev">
...@@ -183,21 +183,21 @@ ...@@ -183,21 +183,21 @@
183 --> 183 -->
184 <root level="INFO"> 184 <root level="INFO">
185 <appender-ref ref="CONSOLE"/> 185 <appender-ref ref="CONSOLE"/>
186 <!-- <appender-ref ref="DEBUG_FILE" />--> 186 <appender-ref ref="DEBUG_FILE" />
187 <appender-ref ref="INFO_FILE"/> 187 <appender-ref ref="INFO_FILE"/>
188 <appender-ref ref="WARN_FILE"/> 188 <appender-ref ref="WARN_FILE"/>
189 <appender-ref ref="ERROR_FILE"/> 189 <appender-ref ref="ERROR_FILE"/>
190 </root> 190 </root>
191 191
192 <!--生产环境:输出到文件--> 192 <!-- &lt;!&ndash;生产环境:输出到文件&ndash;&gt;
193 <!--<springProfile name="pro">--> 193 <springProfile name="pro">
194 <!--<root level="info">--> 194 <root level="info">
195 <!--<appender-ref ref="CONSOLE" />--> 195 <appender-ref ref="CONSOLE" />
196 <!--<appender-ref ref="DEBUG_FILE" />--> 196 <appender-ref ref="DEBUG_FILE" />
197 <!--<appender-ref ref="INFO_FILE" />--> 197 <appender-ref ref="INFO_FILE" />
198 <!--<appender-ref ref="ERROR_FILE" />--> 198 <appender-ref ref="ERROR_FILE" />
199 <!--<appender-ref ref="WARN_FILE" />--> 199 <appender-ref ref="WARN_FILE" />
200 <!--</root>--> 200 </root>
201 <!--</springProfile>--> 201 </springProfile>-->
202 202
203 </configuration> 203 </configuration>
......
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.qys.mapper.ElecLicenseInfoMapper">
4 <update id="updateEciInfo">
5 update ELEC_LICENSE_INFO set ERR_STATE='0',DZZZ_STATE='1' where biz_id=#{bizId}
6 </update>
7
8 <select id="getEciInfoByZsbs" resultType="com.pashanhoo.qys.entity.ElecLicenseInfoDo">
9 select * from ELEC_LICENSE_INFO where zsbs=#{zsbs}
10 </select>
11
12 <select id="getDocumentIdIsNull" resultType="com.pashanhoo.qys.entity.ElecLicenseInfoDo">
13 select *
14 from ELEC_LICENSE_INFO
15 where DOCUMENT_ID is null and htzt='COMPLETE' and ywh = #{ywh}
16 </select>
17 <select id="getWaitForDownload" resultType="com.pashanhoo.qys.entity.ElecLicenseInfoDo">
18 select *
19 from ELEC_LICENSE_INFO
20 where DOCUMENT_ID is not null
21 and SFXZ = '2' and ywh = #{ywh}
22 </select>
23 <select id="getWaitForConvert" resultType="com.pashanhoo.qys.entity.ElecLicenseInfoDo">
24 select *
25 from ELEC_LICENSE_INFO
26 where SFXZ = '1'
27 and SFZH = '2'
28 and ofd_wjdz is not null and ywh = #{ywh}
29 </select>
30 <select id="getYwrMcByCOnditon" resultType="java.lang.String">
31 select qlrmc as ywr
32 from reg_bus_ywr c
33 where ywh = #{ywh}
34 and bdcdyh = #{bdcdyh}
35 and del_flag = '0'
36 and qszt = '1'
37 </select>
38 <select id="getElecLicenseInfo" resultType="com.pashanhoo.qys.entity.ElecLicenseInfoDo">
39 select *
40 from ELEC_LICENSE_INFO
41 where ywh = #{ywh} and zsbs=#{zsbs} and zsbh=#{zsbh} and zjh=#{zjh}
42 </select>
43
44
45 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.zhj.mapper.RegBusBdcqzsdjxxMapper">
4 <update id="updateBdcqzsjbxxInfo">
5 update reg_bus_bdcqzsdjxx set ISCJDZZZ='1' where ID=#{id}
6 </update>
7
8 <select id="getZsdjInfoList" resultType="com.pashanhoo.zhj.entity.RegBusBdcqzsdjxxDo" parameterType="com.pashanhoo.zhj.entity.SynZhjInfoDo">
9 select * from reg_bus_bdcqzsdjxx where
10 del_flag='0'
11 and
12 ywh in
13 <foreach collection="list" item="selectAllListInfo" open="(" close=")" separator=",">
14 #{selectAllListInfo.ywh,jdbcType=VARCHAR}
15 </foreach>
16
17 </select>
18 <select id="getZsdjInfoListByYwh" resultType="com.pashanhoo.zhj.entity.RegBusBdcqzsdjxxDo" parameterType="java.lang.String">
19 select * from reg_bus_bdcqzsdjxx where
20 del_flag='0'
21 and ywh=#{ywh}
22 </select>
23
24
25
26 <select id="getZdInfoByZddm" parameterType="string" resultType="java.util.Map">
27 select c.seachcity as djqdm,
28 (select label
29 from sys_dict b
30 where type = 'reg_bus_djq'
31 and b.value = c.seachcity) as djqmc,
32 c.seachdistrict as djzqdm,
33 (select label
34 from sys_dict b
35 where type = 'reg_bus_djzq'
36 and b.value = c.seachdistrict) as djzqmc,
37 c.bdcdyh,
38 c.zl,
39 c.zdmj,
40 c.yt
41 from reg_base_zdjbxx c,reg_bus_bdcqzsdjxx a
42 where a.del_flag = '0'
43 and a.islogout = '0'
44 and a.bdcdyh = c.bdcdyh
45 and a.bdcdyh=#{bdcdyh}
46 and a.ywh=#{ywh}
47 and c.del_flag = '0'
48 </select>
49 <select id="getHQSInfoByZddm" parameterType="string" resultType="java.util.Map">
50 select c.bdcdyh,
51 c.zrzh,
52 c.ch,
53 c.zl,
54 c.sjcs,
55 c.shbw,
56 c.hx,
57 c.hxjg,
58 c.fwyt1,
59 c.scjzmj,
60 c.sctnjzmj,
61 c.scdxbfjzmj,
62 c.fttdmj,
63 c.fwlx,
64 c.fwxz,
65 b.qllx,
66 b.djlx,
67 b.syqmj,
68 to_char(trunc(b.syqqssj),'yyyy-mm-dd') as syqqssj,
69 to_char(trunc(b.syqjssj),'yyyy-mm-dd') as syqjssj,
70 b.bdcqzh,
71 b.qxdm,
72 to_char(trunc(b.djsj),'yyyy-mm-dd') as djsj,
73 b.qszt,
74 c.zt
75 from reg_base_h c, reg_bus_jsydsyq b
76 where c.del_flag = '0'
77 and c.rights != '3'
78 and exists (select 1
79 from reg_bus_bdcqzsdjxx a
80 where a.del_flag = '0'
81 and a.islogout = '0'
82 and a.bdcdyh = c.bdcdyh
83 and a.ywh=#{ywh}
84 and a.bdcdyh =#{bdcdyh})
85 and c.zddm=b.zddm
86 and b.del_flag = '0'
87 </select>
88 <select id="getQSZTInfoByZddm" parameterType="string" resultType="java.util.Map">
89 select #{bdcdyh} as bdcdyh,
90 nvl((select decode(qszt,'1','0','1') from reg_bus_dyaq where ywh=#{ywh} and bdcdyh=#{bdcdyh} and del_flag='0' and qszt=1),'0') as dyqszt,
91 nvl((select decode(qszt,'1','0','1') from reg_bus_ygdj where ywh=#{ywh} and bdcdyh=#{bdcdyh} and del_flag='0' and qszt=1),'0') as ygqszt,
92 nvl((select decode(qszt,'1','0','1') from reg_bus_yydj where ywh=#{ywh} and bdcdyh=#{bdcdyh} and del_flag='0' and qszt=1),'0') as yyqszt,
93 nvl((select decode(qszt,'1','0','1') from reg_bus_cfdj where ywh=#{ywh} and bdcdyh=#{bdcdyh} and del_flag='0' and qszt=1),'0') as cfqszt
94 from dual
95 </select>
96 <select id="getBdcqzsjbxxInfo" resultType="java.util.Map">
97 select c.id,
98 c.ywh,
99 c.bdcdyh,
100 c.bdcqzh,
101 c.create_date,
102 c.qlrmc,
103 c.gyqk,
104 c.zl,
105 (select label from sys_dict c where type ='reg_bus_qllx' and value= c.qllx and del_flag='0') qllx,
106 c.djlx,
107 c.qlxz,
108 c.qt,
109 c.yt,
110 c.mj,
111 c.syqx,
112 c.qlqtzk,
113 c.fj,
114 c.rights,
115 REPLACE(c.dbsj,'-','') as djsj,
116 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'YYYY') as y,
117 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'MM') as m,
118 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'dd') as d,
119 c.bdcqzbh as bh
120 from reg_bus_bdcqzsdjxx c
121 where c.del_flag = '0'
122 and c.isxydzzz = '1'
123 and c.iscjdzzz = '0'
124 and dbsj is not null
125 </select>
126
127 <select id="getBdcqzsjbxxInfoByYwh" resultType="java.util.Map">
128 select c.id,
129 c.ywh,
130 c.bdcdyh,
131 c.bdcqzh,
132 c.create_date,
133 c.qlrmc,
134 c.gyqk,
135 c.zl,
136 (select label from sys_dict c where type ='reg_bus_qllx' and value= c.qllx and del_flag='0') qllx,
137 c.djlx,
138 c.qlxz,
139 c.qt,
140 c.yt,
141 c.mj,
142 c.syqx,
143 c.qlqtzk,
144 c.fj,
145 c.rights,
146 REPLACE(c.dbsj,'-','') as djsj,
147 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'YYYY') as y,
148 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'MM') as m,
149 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'dd') as d,
150 c.bdcqzbh as bh
151 from reg_bus_bdcqzsdjxx c
152 where c.del_flag = '0'
153 and c.isxydzzz = '1'
154 and c.iscjdzzz = '0'
155 and c.ywh=#{ywh}
156 and dbsj is not null
157 </select>
158 <select id="getQlrInfoByYwh" resultType="java.util.Map">
159 select wm_concat(qlrmc) as qlrmc,wm_concat(zjh) as zjh from reg_bus_qlr c where ywh =#{ywh} and del_flag='0' and qszt='1' order by sxh
160 </select>
161 <select id="getQlrInfoByYwhAndqlr" resultType="java.lang.String">
162 select zjh from reg_bus_qlr c where ywh =#{ywh} and qlrmc=#{qlrmc} and del_flag='0' and qszt='1' order by sxh
163 </select>
164 <select id="getBdcqzsJbxxById" resultType="java.util.Map">
165 select c.id,
166 c.ywh,
167 c.bdcdyh,
168 c.bdcqzh,
169 c.create_date,
170 c.qlrmc,
171 c.gyqk,
172 c.zl,
173 (select label from sys_dict c where type ='reg_bus_qllx' and value= c.qllx and del_flag='0') qllx,
174 c.djlx,
175 c.qlxz,
176 c.qt,
177 c.yt,
178 c.mj,
179 c.syqx,
180 c.qlqtzk,
181 c.fj,
182 c.rights,
183 REPLACE(c.dbsj,'-','') as djsj,
184 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'YYYY') as y,
185 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'MM') as m,
186 to_char(to_date(c.dbsj, 'yyyy-mm-dd'),'dd') as d,
187 c.bdcqzbh as bh
188 from reg_bus_bdcqzsdjxx c
189 where c.id=#{id}
190 </select>
191 <select id="getInfoByValue" resultType="java.lang.String">
192 select label from sys_dict c where del_flag='0' and type=#{type} and value=#{value}
193 </select>
194 <select id="getRightsInfo" resultType="java.util.Map">
195 select * from ( SELECT * FROM reg_bus_rights a WHERE a.bdcdyh = #{bdcdyh} order by del_flag ) where rownum=1
196 </select>
197
198 <select id="getDyqqInfo" resultType="java.util.Map">
199 select c.bdbzzqse,to_char(c.zwlxqssj,'yyyymmdd') as zwlxqssj,to_char(c.zwlxjssj,'yyyymmdd') as zwlxjssj from reg_bus_dyaq c where ywh=#{ywh} and bdcdyh=#{bdcdyh} and qszt='1'
200 </select>
201 <select id="getHtbhInfo" resultType="java.lang.String">
202 select htbh from reg_bus_ygdj c where qszt='1' and del_flag='0' and ywh=#{ywh}
203 </select>
204 <select id="getBdcjbxxInfo" resultType="java.util.Map">
205 select * from reg_bus_bdcqzsdjxx c where bdcdyh=#{bdcdyh} and islogout='0' and dbsj is not null and del_flag='0'
206 </select>
207 <select id="getJbxxInfoByYwhAndBdcdyh" resultType="java.util.Map">
208 select * from reg_bus_bdcqzsdjxx c where ywh=#{ywh} and bdcdyh=#{bdcdyh} and islogout='0' and dbsj is not null and del_flag='0'
209 </select>
210 <select id="getJbxxById" resultType="java.util.Map">
211 select * from reg_bus_bdcqzsdjxx c where id=#{id}
212 </select>
213 <select id="getZdjbxxByZddm" resultType="java.util.Map">
214 select * from reg_base_zdjbxx where del_flag='0' and zddm=#{zddm} and islogout='0'
215 </select>
216 <select id="getZrzInfo" resultType="java.util.Map">
217 select * from reg_base_zrz where bdcdyh=#{bdcdyh} and del_flag='0'
218 </select>
219 <select id="getHInfo" resultType="java.util.Map">
220 select * from reg_base_h c where bdcdyh=#{bdcdyh} and islogout='0' and del_flag='0'
221 </select>
222 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.zhj.mapper.SynZhjInfoMapper">
4
5 <select id="selectAllInfo" resultType="com.pashanhoo.zhj.entity.SynZhjInfoDo">
6 select * from syn_zhjinfo where ZD_STATE='0' and H_STATE='0' and HQS_STATE='0' and del_flag='0'
7 </select>
8
9 <update id="updatezdzt">
10 update syn_zhjinfo set ZD_STATE='1' where ywh=#{ywh}
11 </update>
12 <update id="updateHzt">
13 update syn_zhjinfo set H_STATE='1' where ywh=#{ywh}
14 </update>
15 <update id="updateHqszt">
16 update syn_zhjinfo set HQS_STATE='1' where ywh=#{ywh}
17 </update>
18 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.catalog.mapper.DgArchivesCatalogMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.catalog.entity.DgArchivesCatalogDO">
7 <result column="bsm_catalog" property="bsmCatalog"/>
8 <result column="bsm_archives" property="bsmArchives"/>
9 <result column="xh" property="xh"/>
10 <result column="wjbm" property="wjbm"/>
11 <result column="wjmc" property="wjmc"/>
12 <result column="cllxbm" property="cllxbm"/>
13 <result column="cllxmc" property="cllxmc"/>
14 <result column="ys" property="ys"/>
15 <result column="yh" property="yh"/>
16 <result column="fs" property="fs"/>
17 <result column="wh" property="wh"/>
18 <result column="bz" property="bz"/>
19 <result column="fjly" property="fjly"/>
20 </resultMap>
21
22 <!-- 通用查询结果列 -->
23 <sql id="Base_Column_List">
24 BSM_CATALOG, BSM_ARCHIVES, XH, WJBM, WJMC, CLLXBM, CLLXMC, YS, YH, FS, WH, BZ,FJLY
25 </sql>
26
27 <resultMap id="getCatalogAndBDCDY" type="com.pashanhoo.catalog.entity.vo.DgArchivesCatalogListVO">
28 <result column="bsm_catalog" property="bsmCatalog"/>
29 <result column="bsm_archives" property="bsmArchives"/>
30 <result column="xh" property="xh"/>
31 <result column="wjbm" property="wjbm"/>
32 <result column="wjmc" property="wjmc"/>
33 <result column="cllxbm" property="cllxbm"/>
34 <result column="cllxmc" property="cllxmc"/>
35 <result column="ys" property="ys"/>
36 <result column="yh" property="yh"/>
37 <result column="fs" property="fs"/>
38 <result column="wh" property="wh"/>
39 <result column="bz" property="bz"/>
40 <result column="FJLY" property="fjly"/>
41 <association property="bdcdyDO" javaType="com.pashanhoo.bdcdy.entity.DgBdcdyDO">
42 <result column="BSM_BDCDY" property="bsmBdcdy"/>
43 <result column="BSM_ARCHIVES" property="bsmArchives"/>
44 <result column="BSM_QL" property="bsmQl"/>
45 <result column="bdcdyid" property="bdcdyid"/>
46 <result column="bdcdyh" property="bdcdyh"/>
47 <result column="zl" property="zl"/>
48 <result column="qlr" property="qlr"/>
49 <result column="zjhm" property="zjhm"/>
50 <result column="ywr" property="ywr"/>
51 <result column="bdcqzh" property="bdcqzh"/>
52 <result column="djsj" property="djsj"/>
53 <result column="zxsj" property="zxsj"/>
54 </association>
55 </resultMap>
56
57 <select id="getCatalog" resultMap="getCatalogAndBDCDY">
58 select DAC.*,db.* from DG_ARCHIVES_CATALOG DAC join DG_BDCDY DB on DAC.BSM_ARCHIVES = DB.BSM_ARCHIVES
59 <where>
60 <if test="bsmArchives != null and bsmArchives.size() != 0">
61 DAC.BSM_ARCHIVES in
62 <foreach collection="bsmArchives" item="bsmArchive" separator="," open="(" close=")">
63 #{bsmArchive,jdbcType=VARCHAR}
64 </foreach>
65 </if>
66 </where>
67 </select>
68 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.destroy.mapper.DgArchivesDestructionMapper">
4 <!-- 通用查询映射结果 -->
5 <resultMap id="BaseResultMap" type="com.pashanhoo.destroy.entity.DgArchivesDestructionDO">
6 <id column="BSM_DESTRUCTION" property="bsmDestruction"/>
7 <result column="XHQCBH" property="xhqcbh"/>
8 <result column="FQR" property="fqr"/>
9 <result column="FQRQ" property="fqrq"/>
10 <result column="XHYY" property="xhyy"/>
11 <result column="SHRY" property="shry"/>
12 <result column="SHYJ" property="shyj"/>
13 <result column="XHR" property="xhr"/>
14 <result column="XHRQ" property="xhrq"/>
15 </resultMap>
16 <!-- 销毁页面记录查询 -->
17 <resultMap id="ShowDestructionResultMap" type="com.pashanhoo.destroy.entity.vo.DgArchivesDestructionListVO">
18 <id column="BSM_DESTRUCTION" property="bsmDestruction" />
19 <result column="XHQCBH" property="xhqcbh" />
20 <result column="FQR" property="fqr" />
21 <result column="FQRQ" property="fqrq" />
22 <result column="XHYY" property="xhyy" />
23 <result column="SHRY" property="shry" />
24 <result column="SHYJ" property="shyj" />
25 <result column="XHR" property="xhr" />
26 <result column="XHRQ" property="xhrq" />
27 <result column="AJ_NUM" property="ajNum" />
28 </resultMap>
29 <!-- 档案列表记录查询 -->
30 <resultMap id="ShowArchivesInfoResultMap" type="com.pashanhoo.archive.entity.vo.DgArchivesListVO">
31 <id column="BSM_ARCHIVES" property="bsmArchives" />
32 <result column="AJBT" property="ajbt" />
33 <result column="ZTC" property="ztc" />
34 <result column="FLH" property="flh" />
35 <result column="MLH" property="mlh" />
36 <result column="AJH" property="ajh" />
37 <result column="ND" property="nd" />
38 <result column="JS" property="js" />
39 <result column="YS" property="ys" />
40 <result column="BGQX" property="bgqx" />
41 <result column="QSRQ" property="qsrq" />
42 <result column="ZZRQ" property="zzrq" />
43 <result column="MJ" property="mj" />
44 <result column="HH" property="hh" />
45 <result column="CFWZ" property="cfwz" />
46 <result column="CJR" property="cjr" />
47 <result column="CJRQ" property="cjrq" />
48 <result column="HCR" property="hcr" />
49 <result column="BZ" property="bz" />
50 <result column="SMZT" property="smzt" />
51 <result column="DAZT" property="dazt" />
52 <result column="CDJGBM" property="cdjgbm" />
53 <result column="DALY" property="daly" />
54 </resultMap>
55 <!-- 通用查询结果列 -->
56 <sql id="Base_Column_List">
57 BSM_DESTRUCTION,
58 XHQCBH,
59 FQR,
60 FQRQ,
61 XHYY,
62 SHRY,
63 SHYJ,
64 XHR,
65 XHRQ
66 </sql>
67 <update id="updateArchivesStatus" parameterType="java.lang.String">
68 update dg_archives b
69 set b.dazt = #{dazt,jdbcType=VARCHAR}
70 where exists (select 1
71 from DG_DESTRUCTION_CATALOG a
72 where a.bsm_destruction = #{bsm_destruction,jdbcType=VARCHAR}
73 and b.bsm_archives = a.bsm_archives)
74 </update>
75 <update id="updateArchivesStatusBatch">
76 update dg_archives b
77 set b.dazt = #{dazt,jdbcType=VARCHAR} where bsm_archives in
78 <foreach collection="idList" index="index" item="item"
79 separator="," open="(" close=")">
80 #{item,jdbcType=VARCHAR}
81 </foreach>
82 </update>
83 <update id="updateDestructionArchivesStatus">
84 update DG_DESTRUCTION b
85 set b.dazt = #{dazt,jdbcType=VARCHAR}
86 where bsm_destruction=#{bsm_destruction,jdbcType=VARCHAR}
87 </update>
88 <select id="selectXhResult" resultMap="ShowDestructionResultMap">
89 select a.BSM_DESTRUCTION,
90 a.XHQCBH,
91 a.FQR,
92 a.FQRQ,
93 a.XHYY,
94 a.SHRY,
95 a.SHYJ,
96 a.XHR,
97 a.XHRQ,
98 count(1) over(partition by b.bsm_destruction, b.bsm_archives) aj_num
99 from dg_archives_destruction a, dg_destruction_catalog b
100 where a.bsm_destruction = b.bsm_destruction
101 and exists
102 (select 1 from dg_archives c where c.bsm_archives = b.bsm_archives
103 <if test="ajh!=null and ajh!='' ">
104 and c.ajh=#{ajh,jdbcType=VARCHAR}
105 </if>
106 )
107 <if test="xhqcbh!=null and xhqcbh!='' ">
108 and a.xhqcbh=#{xhqcbh,jdbcType=VARCHAR}
109 </if>
110 <if test="xhrq!=null and xhrq!='' ">
111 and a.XHRQ=#{xhrq,jdbcType=TIMESTAMP}
112 </if>
113 order by a.XHRQ desc
114 </select>
115 <select id="queryArchivesInfo" resultMap="ShowArchivesInfoResultMap">
116 select * from dg_archives b
117 where exists (select 1
118 from DG_DESTRUCTION_CATALOG a
119 where a.BSM_LEND = #{bsm_destruction,jdbcType=VARCHAR}
120 and b.bsm_archives = a.bsm_archives)
121 </select>
122
123 <select id="getDestroyLeftMenu" resultType="com.pashanhoo.archive.entity.DgArchivesDO">
124 select DA.*
125 from DG_ARCHIVES DA
126 join DG_DESTRUCTION_CATALOG DDC on DA.BSM_ARCHIVES = DDC.BSM_ARCHIVES
127 join DG_ARCHIVES_DESTRUCTION DAD on DDC.BSM_DESTRUCTION = DAD.BSM_DESTRUCTION
128 where DAD.XHQCBH = #{xhqcbh,jdbcType=VARCHAR}
129 </select>
130 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.archive.mapper.DgArchivesMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.archive.entity.DgArchivesDO">
7 <id column="BSM_ARCHIVES" property="bsmArchives" />
8 <result column="AJBT" property="ajbt" />
9 <result column="ZTC" property="ztc" />
10 <result column="FLH" property="flh" />
11 <result column="MLH" property="mlh" />
12 <result column="AJH" property="ajh" />
13 <result column="ND" property="nd" />
14 <result column="JS" property="js" />
15 <result column="YS" property="ys" />
16 <result column="BGQX" property="bgqx" />
17 <result column="QSRQ" property="qsrq" />
18 <result column="ZZRQ" property="zzrq" />
19 <result column="MJ" property="mj" />
20 <result column="HH" property="hh" />
21 <result column="CFWZ" property="cfwz" />
22 <result column="CJR" property="cjr" />
23 <result column="CJRQ" property="cjrq" />
24 <result column="HCR" property="hcr" />
25 <result column="BZ" property="bz" />
26 <result column="SMZT" property="smzt" />
27 <result column="DAZT" property="dazt" />
28 <result column="CDJGBM" property="cdjgbm" />
29 <result column="DALY" property="daly" />
30 </resultMap>
31
32 <!-- 通用查询结果列 -->
33 <sql id="Base_Column_List">
34 BSM_ARCHIVES, AJBT, ZTC, FLH, MLH, AJH, ND, JS, YS, BGQX, QSRQ, ZZRQ, MJ, HH, CFWZ, CJR, CJRQ, HCR, BZ, SMZT, DAZT, CDJGBM, DALY
35 </sql>
36 <update id="updateArchivesInfoByReceiveIdList">
37 update DG_ARCHIVES a set a.dazt=#{dazt,jdbcType=VARCHAR} where exists (
38 select 1 from dg_receive_relation b where a.BSM_ARCHIVES=b.BSM_ARCHIVES
39 and b.bms_receive in
40 <foreach collection="idList" index="index" item="item"
41 separator="," open="(" close=")">
42 #{item,jdbcType=VARCHAR}
43 </foreach>
44 )
45 </update>
46
47 <select id="searchArchive" resultType="com.pashanhoo.archive.entity.vo.SearchArchiveVO">
48 select rownum as xh,
49 DA.BSM_ARCHIVES,
50 DA.DAZT,
51 DA.DALY,
52 DA.AJH,
53 DA.CFWZ,
54 DA.HH,
55 D.BDCQZH,
56 D.QLR,
57 D.YWR,
58 DB.YWH,
59 D.BDCDYH,
60 DB.QLLX
61 from DG_ARCHIVES DA
62 join DG_BUSINESS DB on DA.BSM_ARCHIVES = DB.BSM_ARCHIVES
63 join DG_BDCDY D on DA.BSM_ARCHIVES = D.BSM_ARCHIVES
64 <where>
65 <if test="request.ajh != null and request.ajh != ''">
66 AJH = #{request.ajh,jdbcType=VARCHAR}
67 </if>
68 <if test="request.mlh != null and request.mlh != ''">
69 and MLH = #{request.mlh,jdbcType=VARCHAR}
70 </if>
71 <if test="request.hh != null and request.hh != ''">
72 and HH = #{request.hh,jdbcType=VARCHAR}
73 </if>
74 <if test="request.dazt != null and request.dazt != ''">
75 and DAZT = #{request.dazt,jdbcType=VARCHAR}
76 </if>
77 <if test="request.ywh != null and request.ywh != ''">
78 and YWH = #{request.ywh,jdbcType=VARCHAR}
79 </if>
80 <if test="request.bdcqzh != null and request.bdcqzh != ''">
81 and BDCQZH = #{request.bdcqzh,jdbcType=VARCHAR}
82 </if>
83 <if test="request.bdcdyh != null and request.bdcdyh != ''">
84 and BDCDYH = #{request.bdcdyh,jdbcType=VARCHAR}
85 </if>
86 <if test="request.qllx != null and request.qllx != ''">
87 and QLLX = #{request.qllx,jdbcType=VARCHAR}
88 </if>
89 <if test="request.qlr != null and request.qlr != ''">
90 and QLR = #{request.qlr,jdbcType=VARCHAR}
91 </if>
92 </where>
93 </select>
94
95
96 <resultMap id="CatalogWithFile" type="com.pashanhoo.catalog.entity.vo.DgArchivesCatalogWithFileVO">
97 <result column="bsm_catalog" property="bsmCatalog"/>
98 <result column="bsm_archives" property="bsmArchives"/>
99 <result column="xh" property="xh"/>
100 <result column="wjbm" property="wjbm"/>
101 <result column="wjmc" property="wjmc"/>
102 <result column="cllxbm" property="cllxbm"/>
103 <result column="cllxmc" property="cllxmc"/>
104 <result column="ys" property="ys"/>
105 <result column="yh" property="yh"/>
106 <result column="fs" property="fs"/>
107 <result column="wh" property="wh"/>
108 <result column="bz" property="bz"/>
109 <collection property="dgFileDOS" ofType="com.pashanhoo.file.entity.DgFileDO">
110 <result column="BSM_FILE" property="bsmFile"/>
111 <result column="DF_BSM_CATALOG" property="bsmCatalog"/>
112 <result column="KZM" property="kzm"/>
113 <result column="SCRQ" property="scrq"/>
114 <result column="SCR" property="scr"/>
115 <result column="FJURL" property="fjurl"/>
116 <result column="FJSIZE" property="fjsize"/>
117 </collection>
118 </resultMap>
119
120 <select id="selectCatalogWithFile" resultMap="CatalogWithFile">
121 select DAC.*, DF.BSM_FILE as BSM_FILE, DF.BSM_CATALOG as DF_BSM_CATALOG, DF.KZM as KZM,DF.SCRQ as SCRQ,DF.SCR as SCR,DF.FJURL as FJURL,DF.FJSIZE as FJSIZE
122 from DG_FILE DF
123 left join DG_ARCHIVES_CATALOG DAC on DAC.BSM_CATALOG =
124 DF.BSM_CATALOG
125 <where>
126 <if test="request.bsmArchives != null and request.bsmArchives != ''">
127 BSM_ARCHIVES = #{request.bsmArchives,jdbcType=VARCHAR}
128 </if>
129 </where>
130 order by XH
131 </select>
132 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.modify.mapper.DgArchivesModifyMapper">
4 <!-- 通用查询映射结果 -->
5 <resultMap id="BaseResultMap" type="com.pashanhoo.modify.entity.DgModifyDO">
6 <id column="BSM_MODIFY" property="bsmModify"/>
7 <result column="BSM_ARCHIVES" property="bsmArchives"/>
8 <result column="XGBH" property="xgbh"/>
9 <result column="YDAXX" property="ydaxx"/>
10 <result column="XDAXX" property="xdaxx"/>
11 <result column="XGNR" property="xgnr"/>
12 <result column="XGSJ" property="xgsj"/>
13 <result column="XGR" property="xgr"/>
14 <result column="BZ" property="bz"/>
15 </resultMap>
16 <!--&lt;!&ndash; 通用查询映射结果 &ndash;&gt;-->
17 <!--<resultMap id="SearchResultMap" type="com.pashanhoo.modify.entity.vo.DgArchivesModifyListVO">-->
18 <!-- <id column="BSM_ARCHIVES" property="bsmArchives" />-->
19 <!-- <result column="XGSJ" property="xgsj" />-->
20 <!-- <result column="CREATER" property="creater" />-->
21 <!-- <result column="DJLX" property="djlx" />-->
22 <!-- <result column="DJJGMC" property="djjgmc" />-->
23 <!-- <result column="AJH" property="ajh" />-->
24 <!-- <result column="YWH" property="ywh" />-->
25 <!-- <result column="BDCDYH" property="bdcdyh" />-->
26 <!-- <result column="QLR" property="qlr" />-->
27 <!-- <result column="YWR" property="ywr" />-->
28 <!-- <result column="BDCQZH" property="bdcqzh" />-->
29 <!-- <result column="BDCDY_NUM" property="bdcdyNum" />-->
30 <!--</resultMap>-->
31 <!-- 通用查询结果列 -->
32 <sql id="Base_Column_List">
33 BSM_MODIFY,
34 BSM_ARCHIVES,
35 XGBH,
36 YDAXX,
37 XDAXX,
38 XGNR,
39 XGSJ,
40 XGR,
41 BZ
42 </sql>
43 <select id="searchDgArchivesModifyList" resultType="com.pashanhoo.modify.entity.vo.DgArchivesModifyListVO">
44 select DA.BSM_ARCHIVES,
45 DM.BSM_MODIFY,
46 DB.QLLX,
47 DB.DJLX,
48 DA.AJH,
49 DB.YWH,
50 BDCDY.BDCDYH,
51 BDCDY.QLR,
52 BDCDY.YWR,
53 BDCDY.BDCQZH,
54 DM.CREATETIME,
55 DM.CREATER,
56 DM.STATE,
57 count(1) over (partition by DM.BSM_MODIFY) as bdcdyNum
58 from DG_MODIFY DM
59 join DG_BUSINESS DB on DM.BSM_ARCHIVES = DB.BSM_ARCHIVES
60 join DG_BDCDY BDCDY on DM.BSM_ARCHIVES = BDCDY.BSM_ARCHIVES
61 join DG_ARCHIVES DA on DM.BSM_ARCHIVES = DA.BSM_ARCHIVES
62 <where>
63 <if test="request.djywmc != null and request.djywmc != ''">
64 DB.DJYWMC = #{request.djywmc,jdbcType=VARCHAR}
65 </if>
66 <if test="request.djlx != null and request.djlx != ''">
67 and DB.DJLX = #{request.djlx,jdbcType=VARCHAR}
68 </if>
69 <if test="request.creater != null and request.creater != ''">
70 and DM.CREATER = #{request.creater,jdbcType=VARCHAR}
71 </if>
72 <if test="request.xgqssj != null">
73 <![CDATA[
74 and DM.CREATETIME >= #{request.xgqssj,jdbcType=TIMESTAMP}
75 ]]>
76 </if>
77 <if test="request.xgjzsj != null">
78 <![CDATA[
79 and DM.CREATETIME <= #{request.xgjzsj,jdbcType=TIMESTAMP}
80 ]]>
81 </if>
82 <if test="request.ajh != null and request.ajh != ''">
83 and DA.AJH = #{request.ajh,jdbcType=VARCHAR}
84 </if>
85 <if test="request.ywh != null and request.ywh != ''">
86 and DB.YWH = #{request.ywh,jdbcType=VARCHAR}
87 </if>
88 <if test="request.bdcdyh != null and request.bdcdyh != ''">
89 and BDCDY.BDCDYH = #{request.bdcdyh,jdbcType=VARCHAR}
90 </if>
91 <if test="request.bdcqzh != null and request.bdcqzh != ''">
92 and BDCDY.BDCQZH = #{request.bdcqzh,jdbcType=VARCHAR}
93 </if>
94 </where>
95 </select>
96 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.replenish.mapper.DgArchivesReplenishMapper">
4 <!-- 通用查询映射结果 -->
5 <resultMap id="BaseResultMap" type="com.pashanhoo.replenish.entity.DgArchivesReplenishDO">
6 <id column="BSM_MODIFY" property="bsmModify"/>
7 <result column="BSM_ARCHIVES" property="bsmArchives"/>
8 <result column="BLBH" property="blbh"/>
9 <result column="CREATETIME" property="createTime"/>
10 <result column="CREATER" property="creater"/>
11 <result column="BZ" property="bz"/>
12 </resultMap>
13
14 <select id="search" resultType="com.pashanhoo.replenish.entity.vo.DgArchivesReplenishListVO">
15 select DGR.BSM_ARCHIVES,
16 DGR.BSM_MODIFY,
17 DB.QLLX,
18 DB.DJLX,
19 DA.AJH,
20 DB.YWH,
21 BDCDY.BDCDYH,
22 BDCDY.QLR,
23 BDCDY.YWR,
24 BDCDY.BDCQZH,
25 DGR.CREATETIME,
26 DGR.CREATER,
27 DGR.STATE,
28 count(1) over (partition by BDCDY.BSM_ARCHIVES) as bdcdyNum
29 from DG_REPLENISH DGR
30 join DG_ARCHIVES DA on DA.BSM_ARCHIVES = DGR.BSM_ARCHIVES
31 join DG_BDCDY BDCDY on BDCDY.BSM_ARCHIVES = DGR.BSM_ARCHIVES
32 join DG_BUSINESS DB on DB.BSM_ARCHIVES = DGR.BSM_ARCHIVES
33 <where>
34 <if test="request.ywh != null and request.ywh != ''">
35 DB.YWH = #{request.ywh,jdbcType=VARCHAR}
36 </if>
37 <if test="request.qllx != null and request.qllx != ''">
38 and DB.QLLX = #{request.qllx,jdbcType=VARCHAR}
39 </if>
40 <if test="request.djlx != null and request.djlx != ''">
41 and DB.DJLX = #{request.djlx,jdbcType=VARCHAR}
42 </if>
43 <if test="request.creater != null and request.creater != ''">
44 and DGR.CREATER = #{request.creater,jdbcType=VARCHAR}
45 </if>
46 <if test="request.createTime != null">
47 and DGR.CREATETIME = #{request.createTime,jdbcType=TIMESTAMP}
48 </if>
49 </where>
50 </select>
51 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.bdcdy.mapper.DgBdcdyMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.bdcdy.entity.DgBdcdyDO">
7 <id column="BSM_BDCDY" property="bsmBdcdy" />
8 <result column="BSM_ARCHIVES" property="bsmArchives" />
9 <result column="BSM_QL" property="bsmQl" />
10 <result column="BDCDYID" property="bdcdyid" />
11 <result column="BDCDYH" property="bdcdyh" />
12 <result column="ZL" property="zl" />
13 <result column="QLR" property="qlr" />
14 <result column="ZJHM" property="zjhm" />
15 <result column="YWR" property="ywr" />
16 <result column="BDCQZH" property="bdcqzh" />
17 <result column="DJSJ" property="djsj" />
18 <result column="ZXSJ" property="zxsj" />
19 </resultMap>
20
21 <!-- 通用查询结果列 -->
22 <sql id="Base_Column_List">
23 BSM_BDCDY, BSM_ARCHIVES, BSM_QL, BDCDYID, BDCDYH, ZL, QLR, ZJHM, YWR, BDCQZH, DJSJ, ZXSJ
24 </sql>
25 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.business.mapper.DgBusinessMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.business.entity.DgBusinessDO">
7 <id column="BSM_BUSINESS" property="bsmBusiness" />
8 <result column="BSM_ARCHIVES" property="bsmArchives" />
9 <result column="YWH" property="ywh" />
10 <result column="DJLX" property="djlx" />
11 <result column="QLLX" property="qllx" />
12 <result column="DJJGBM" property="djjgbm" />
13 <result column="DJJGMC" property="djjgmc" />
14 </resultMap>
15
16 <!-- 通用查询结果列 -->
17 <sql id="Base_Column_List">
18 BSM_BUSINESS, BSM_ARCHIVES, YWH, DJLX, QLLX, DJJGBM, DJJGMC
19 </sql>
20 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.destroycatalog.mapper.DgDestructionCatalogMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.destroycatalog.entity.DgDestructionCatalogDO">
7 <id column="BSM_DESTRUCTIONCATALOG" property="bsmDestructioncatalog" />
8 <result column="BSM_ARCHIVES" property="bsmArchives" />
9 <result column="BSM_DESTRUCTION" property="bsmDestruction" />
10 </resultMap>
11
12 <!-- 通用查询结果列 -->
13 <sql id="Base_Column_List">
14 BSM_DESTRUCTIONCATALOG, BSM_ARCHIVES, BSM_DESTRUCTION
15 </sql>
16 <select id="getDestructionCatalog" resultType="com.pashanhoo.archive.entity.DgArchivesDO">
17
18 </select>
19 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.file.mapper.DgFileMapper">
4 <!-- 通用查询映射结果 -->
5 <resultMap id="BaseResultMap" type="com.pashanhoo.file.entity.DgFileDO">
6 <result column="bsm_file" property="bsmFile"/>
7 <result column="bsm_catalog" property="bsmCatalog"/>
8 <result column="kzm" property="kzm"/>
9 <result column="scrq" property="scrq"/>
10 <result column="scr" property="scr"/>
11 <result column="fjurl" property="fjurl"/>
12 <result column="fjsize" property="fjsize"/>
13 <result column="xh" property="xh"/>
14 </resultMap>
15
16 <!-- 通用查询结果列 -->
17 <sql id="Base_Column_List">
18 BSM_FILE,
19 BSM_CATALOG,
20 KZM,
21 SCRQ,
22 SCR,
23 FJURL,
24 FJSIZE,
25 XH
26 </sql>
27
28 <resultMap id="result" type="com.pashanhoo.file.entity.vo.DgCatalogWithFileVO">
29 <result column="bsm_archives" property="bsmArchive"/>
30 <result column="bsmCatalog" property="bsmCatalog"/>
31 <result column="wjmc" property="wjmc"/>
32 <result column="catalogXh" property="catalogXh"/>
33 <collection property="fileLists" ofType="com.pashanhoo.file.entity.vo.DgFileListVO">
34 <result column="bsm_file" property="bsmFile"/>
35 <result column="bsm_catalog" property="bsmCatalog"/>
36 <result column="kzm" property="kzm"/>
37 <result column="scrq" property="scrq"/>
38 <result column="scr" property="scr"/>
39 <result column="fjurl" property="fjurl"/>
40 <result column="fjsize" property="fjsize"/>
41 <result column="XH" property="xh"/>
42 </collection>
43 </resultMap>
44
45 <select id="getFileList" resultMap="result">
46 select DF.*, DAC.XH as catalogXh, DAC.WJMC, DAC.BSM_CATALOG as bsmCatalog, DA.BSM_ARCHIVES
47 from DG_FILE DF
48 right join DG_ARCHIVES_CATALOG DAC on DAC.BSM_CATALOG = DF.BSM_CATALOG
49 join DG_ARCHIVES DA on DAC.BSM_ARCHIVES = DA.BSM_ARCHIVES
50 <where>
51 <if test="bsmArchive != null and bsmArchive != ''">
52 DAC.BSM_ARCHIVES = #{bsmArchive,jdbcType=VARCHAR}
53 </if>
54 </where>
55 order by DF.XH, DAC.XH
56 </select>
57
58 <select id="getFilesById" resultMap="BaseResultMap">
59 select *
60 from DG_FILE
61 where
62 BSM_FILE in
63 <if test="bsmFiles != null and bsmFiles.size() != 0">
64 <foreach collection="bsmFiles" item="bsmFile" open="(" close=")" separator=",">
65 #{bsmFile,jdbcType=VARCHAR}
66 </foreach>
67 </if>
68 </select>
69
70 <!--<update id="updateFileSort">-->
71 <!-- update DG_FILE set-->
72 <!--</update>-->
73 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.lendcatalog.mapper.DgLendCatalogMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.lendcatalog.entity.DgLendCatalogDO">
7 <id column="BSM_LENDCATALOG" property="bsmLendcatalog" />
8 <result column="BSM_ARCHIVES" property="bsmArchives" />
9 <result column="BSM_LEND" property="bsmLend" />
10 <result column="借阅材料类型" property="借阅材料类型" />
11 </resultMap>
12
13 <!-- 通用查询结果列 -->
14 <sql id="Base_Column_List">
15 BSM_LENDCATALOG, BSM_ARCHIVES, BSM_LEND, 借阅材料类型
16 </sql>
17 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.lendfile.mapper.DgLendFileMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.lendfile.entity.DgLendFileDO">
7 <id column="BSM_LENDFILE" property="bsmLendfile" />
8 <result column="BSM_LENDCATALOG" property="bsmLendcatalog" />
9 <result column="BSM_CATALOG" property="bsmCatalog" />
10 </resultMap>
11
12 <!-- 通用查询结果列 -->
13 <sql id="Base_Column_List">
14 BSM_LENDFILE, BSM_LENDCATALOG, BSM_CATALOG
15 </sql>
16 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.lend.mapper.DgLendMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.lend.entity.vo.DgLendDetailVO">
7 <id column="BSM_LEND" property="bsm_lend" />
8 <result column="JYSX" property="jyr" />
9 <result column="JYDH" property="jydw" />
10 <result column="AJH" property="ajh" />
11 <result column="JYFS" property="jyfs" />
12 <result column="JYDW" property="jydw" />
13 <result column="JYR" property="jyr" />
14 <result column="QSSJ" property="qssj" />
15 <result column="JZRQ" property="jzrq" />
16 <result column="GHR" property="ghr" />
17 <result column="GHRQ" property="ghrq" />
18 <result column="JYZT" property="jyzt" />
19 <result column="DA_NUM" property="da_num" />
20 </resultMap>
21 <!-- 档案列表记录查询 -->
22 <resultMap id="ShowArchivesInfoResultMap" type="com.pashanhoo.archive.entity.vo.DgArchivesListVO">
23 <id column="BSM_ARCHIVES" property="bsmArchives" />
24 <result column="AJBT" property="ajbt" />
25 <result column="ZTC" property="ztc" />
26 <result column="FLH" property="flh" />
27 <result column="MLH" property="mlh" />
28 <result column="AJH" property="ajh" />
29 <result column="ND" property="nd" />
30 <result column="JS" property="js" />
31 <result column="YS" property="ys" />
32 <result column="BGQX" property="bgqx" />
33 <result column="QSRQ" property="qsrq" />
34 <result column="ZZRQ" property="zzrq" />
35 <result column="MJ" property="mj" />
36 <result column="HH" property="hh" />
37 <result column="CFWZ" property="cfwz" />
38 <result column="CJR" property="cjr" />
39 <result column="CJRQ" property="cjrq" />
40 <result column="HCR" property="hcr" />
41 <result column="BZ" property="bz" />
42 <result column="SMZT" property="smzt" />
43 <result column="DAZT" property="dazt" />
44 <result column="CDJGBM" property="cdjgbm" />
45 <result column="DALY" property="daly" />
46 </resultMap>
47 <!-- 通用查询映射结果 -->
48 <resultMap id="ArchiveLendInfoResultMap" type="com.pashanhoo.lend.entity.vo.ArchiveLendInfoRequestVO">
49 <id column="BSM_ARCHIVES" property="bsm_archives" />
50 <result column="DAZT" property="dazt" />
51 <result column="AJH" property="ajh" />
52 <result column="BDCDYH" property="bdcdyh" />
53 <result column="QLLX" property="qllx" />
54 <result column="DJLX" property="djlx" />
55 <result column="QLR" property="qlr" />
56 <result column="YWR" property="ywr" />
57 <result column="ZJHM" property="zjhm" />
58 <result column="BDCDY_NUM" property="bdcdy_num" />
59 </resultMap>
60 <!-- 通用查询结果列 -->
61 <sql id="Base_Column_List">
62 BSM_LEND, JYR, JYDW, LXDW, TXDZ, JYRQ, GHRQ, PZR, JZRQ, JCLY, LYMD, BZ, PZSJ
63 </sql>
64 <update id="updateArchivesStatus">
65 update dg_archives b
66 set b.dazt = #{dazt,jdbcType=VARCHAR}
67 where exists (select 1
68 from DG_LEND_CATALOG a
69 where a.BSM_LENDCATALOG = #{lendBsm,jdbcType=VARCHAR}
70 and b.bsm_archives = a.bsm_archives)
71
72 </update>
73 <update id="updateArchivesStatusBatch">
74 update dg_archives b
75 set b.dazt = #{dazt,jdbcType=VARCHAR} where bsm_archives in
76 <foreach collection="idList" index="index" item="item"
77 separator="," open="(" close=")">
78 #{item,jdbcType=VARCHAR}
79 </foreach>
80 </update>
81 <select id="getDanganJyDetail" resultMap="BaseResultMap">
82 select d.BSM_LEND,
83 d.jysx,
84 d.jydh,
85 d.ajh,
86 d.jyfs,
87 d.jydw,
88 d.jyr,
89 d.qssj,
90 d.jzrq,
91 d.ghr,
92 d.ghsj,
93 d.jyzt,count(1) over(partition by d.BSM_LEND order by d.jysx asc, d.jzrq asc, d.jyzt asc) da_num
94 from (select a.jy_bsm,
95 case
96 when a.jzrq &lt; sysdate and a.JYZT = '8' then
97 '0'
98 else
99 '1'
100 end as jysx,
101 a.jydh,
102 b.ajh,
103 a.jyfs,
104 a.jydw,
105 a.jyr,
106 a.qssj,
107 a.jzrq,
108 a.ghr,
109 a.ghrq,
110 a.jyzt
111 from dg_lend a, dg_archives b,dg_lend_catalog c,dg_bdcdy e,dg_business f
112 where b.BSM_ARCHIVES=c.BSM_ARCHIVES
113 and a.BSM_LEND=c.BSM_LEND
114 and e.BSM_ARCHIVES=b.BSM_ARCHIVES
115 and f.BSM_ARCHIVES=b.BSM_ARCHIVES
116 <if test="ajh != null and ajh!='' ">
117 and b.ajh=#{ajh,jdbcType=VARCHAR}
118 </if>
119 <if test="bdcdyh != null and bdcdyh!='' ">
120 and e.bdcdyh=#{bdcdyh,jdbcType=VARCHAR}
121 </if>
122 <if test="ywh != null and ywh!=''">
123 and f.ywh=#{ywh,jdbcType=VARCHAR}
124 </if>
125 <if test="bdcqzh != null and bdcqzh !='' ">
126 and e.zjhm=#{bdcqzh,jdbcType=VARCHAR}
127 </if>
128 <if test="jyr != null and jyr!='' ">
129 and a.jyr=#{jyr,jdbcType=VARCHAR}
130 </if>
131 <if test="jyzt != null and jyzt != '' ">
132 and a.jyzt=#{jyzt,jdbcType=VARCHAR}
133 </if>
134
135 ) d
136
137
138
139 </select>
140 <select id="queryArchivesInfo" resultMap="ShowArchivesInfoResultMap">
141 select * from dg_archives b
142 where exists (select 1
143 from DG_LEND_CATALOG a
144 where a.BSM_LENDCATALOG = #{bsm_lend,jdbcType=VARCHAR}
145 and b.bsm_archives = a.bsm_archives)
146 </select>
147 <select id="getArchiveLendInfo" resultType="com.pashanhoo.lend.entity.vo.ArchiveLendInfoRequestVO">
148 select a.bsm_archives,a.dazt,a.ajh,c.bdcdyh,b.qllx,b.djlx,c.qlr,c.ywr,c.zjhm,count(1) over (partition by a.bsm_archives) bdcdy_num
149 from dg_archives a, dg_business b, dg_bdcdy c
150 where a.bsm_archives = b.bsm_archives
151 and a.bsm_archives=c.bsm_archives
152 and a.dazt='4'
153 <if test="ajh != null and ajh != '' ">
154 and a.ajh=#{ajh,jdbcType=VARCHAR}
155 </if>
156 <if test="ywh != null and ywh != '' ">
157 and b.ywh=#{ywh,jdbcType=VARCHAR}
158 </if>
159 <if test="bdcdyh != null and bdcdyh != '' ">
160 and c.bdcdyh=#{bdcdyh,jdbcType=VARCHAR}
161 </if>
162 <if test="zjhm != null and zjhm != '' ">
163 and c.zjhm=#{zjhm,jdbcType=VARCHAR}
164 </if>
165 <if test="qlr != null and qlr != '' ">
166 and c.qlr=#{qlr,jdbcType=VARCHAR}
167 </if>
168 <if test="ywr != null and ywr != '' ">
169 and c.ywr=#{ywr,jdbcType=VARCHAR}
170 </if>
171 <if test="cfwh != null and cfwh != '' ">
172 and c.zjhm=#{cfwh,jdbcType=VARCHAR}
173 </if>
174 <if test="qllx != null and qllx != '' ">
175 and c.qllx=#{qllx,jdbcType=VARCHAR}
176 </if>
177 </select>
178 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.receive.mapper.DgReceiveMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.receive.entity.DgReceiveDO">
7 <id column="BMS_RECEIVE" property="bmsReceive" />
8 <result column="YWLYJBM" property="ywlyjbm" />
9 <result column="QLLX" property="qllx" />
10 <result column="DJLX" property="djlx" />
11 <result column="SJRY" property="sjry" />
12 <result column="SJSJ" property="sjsj" />
13 <result column="YWH" property="ywh" />
14 <result column="BDCDYH" property="bdcdyh" />
15 <result column="DYZS" property="dyzs" />
16 <result column="BDCQZH" property="bdcqzh" />
17 <result column="QLR" property="qlr" />
18 <result column="ZJHM" property="zjhm" />
19 <result column="YWR" property="ywr" />
20 <result column="ZL" property="zl" />
21 <result column="DJSJ" property="djsj" />
22 <result column="JSSJ" property="jssj" />
23 <result column="TSJGBM" property="tsjgbm" />
24 <result column="GDFS" property="gdfs" />
25 <result column="GDSJ" property="gdsj" />
26 <result column="STATE" property="state" />
27 </resultMap>
28
29 <!-- 通用查询结果列 -->
30 <sql id="Base_Column_List">
31 BMS_RECEIVE, YWLYJBM, QLLX, DJLX, SJRY, SJSJ, YWH, BDCDYH, DYZS, BDCQZH, QLR, ZJHM, YWR, ZL, DJSJ, JSSJ, TSJGBM, GDFS, GDSJ, STATE
32 </sql>
33 <update id="updateReceiveBatch">
34 update dg_receive b
35 set b.state = #{state,jdbcType=VARCHAR},b.gdsj=sysdate
36 where BMS_RECEIVE in
37 <foreach collection="idList" index="index" item="item"
38 separator="," open="(" close=")">
39 #{item,jdbcType=VARCHAR}
40 </foreach>
41 </update>
42 <select id="getDjywbmInfo" resultType="com.pashanhoo.receive.entity.vo.DjywbmVO">
43 select * from SYS_CONVERT_DJYWBM t where oncedjywbm=#{oncedjywbm,jdbcType=VARCHAR} and state='1'
44 </select>
45 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.receiverelation.mapper.DgReceiveRelationMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.receiverelation.entity.DgReceiveRelationDO">
7 <result column="BSM_RELATION" property="bsmRelation" />
8 <result column="BSM_ARCHIVES" property="bsmArchives" />
9 <result column="BMS_RECEIVE" property="bmsReceive" />
10 </resultMap>
11
12 <!-- 通用查询结果列 -->
13 <sql id="Base_Column_List">
14 BSM_RELATION, BSM_ARCHIVES, BMS_RECEIVE
15 </sql>
16 </mapper>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.staff.mapper.DgStaffMapper">
4
5 <!-- 通用查询映射结果 -->
6 <resultMap id="BaseResultMap" type="com.pashanhoo.staff.entity.DgStaffDO">
7 <id column="BSM_STAFF" property="bsmStaff" />
8 <result column="STAFF_ID" property="staffId" />
9 <result column="STAFF_NAME" property="staffName" />
10 <result column="STAFF_PASSWORD" property="staffPassword" />
11 <result column="STAFF_ROLE_CODE" property="staffRoleCode" />
12 <result column="STAFF_ROLE_NAME" property="staffRoleName" />
13 <result column="STAFF_DEART_ID" property="staffDeartId" />
14 <result column="STAFF_DEART_NAME" property="staffDeartName" />
15 <result column="REMARK" property="remark" />
16 </resultMap>
17
18 <!-- 通用查询结果列 -->
19 <sql id="Base_Column_List">
20 BSM_STAFF, STAFF_ID, STAFF_NAME, STAFF_PASSWORD, STAFF_ROLE_CODE, STAFF_ROLE_NAME, STAFF_DEART_ID, STAFF_DEART_NAME, REMARK
21 </sql>
22 </mapper>
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
3 <mapper namespace="com.pashanhoo.common.util.SysCode.SysCodeMapper">
4
5
6 </mapper>
...\ No newline at end of file ...\ No newline at end of file
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="com.pashanhoo.dictionary.dao.SysDictMapper">
4 <resultMap id="BaseResultMap" type="com.pashanhoo.dictionary.model.dto.SysDict">
5 <!--@mbg.generated-->
6 <!--@Table SYS_DICT-->
7 <id column="DICTID" jdbcType="VARCHAR" property="dictId"/>
8 <result column="PARENTID" jdbcType="VARCHAR" property="parentId"/>
9 <result column="DCODE" jdbcType="VARCHAR" property="dcode"/>
10 <result column="DNAME" jdbcType="VARCHAR" property="dname"/>
11 <result column="SORT" jdbcType="DECIMAL" property="sort"/>
12 <result column="ISTREE" jdbcType="CHAR" property="isTree"/>
13 <result column="TYPEID" jdbcType="VARCHAR" property="typeId"/>
14 </resultMap>
15 <sql id="Base_Column_List">
16 <!--@mbg.generated-->
17 DICTID, PARENTID, DCODE, DNAME, SORT, ISTREE, TYPEID
18 </sql>
19 <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
20 <!--@mbg.generated-->
21 select
22 <include refid="Base_Column_List"/>
23 from SYS_DICT
24 where DICTID = #{dictid,jdbcType=VARCHAR}
25 </select>
26 <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
27 <!--@mbg.generated-->
28 delete
29 from SYS_DICT
30 where DICTID = #{dictid,jdbcType=VARCHAR}
31 </delete>
32 <insert id="insert" parameterType="com.pashanhoo.dictionary.model.dto.SysDict">
33 <!--@mbg.generated-->
34 insert into SYS_DICT (DICTID, PARENTID, DCODE,
35 DNAME, SORT, ISTREE, TYPEID)
36 values (#{dictId,jdbcType=VARCHAR}, #{parentId,jdbcType=VARCHAR}, #{dcode,jdbcType=VARCHAR},
37 #{dname,jdbcType=VARCHAR}, #{sort,jdbcType=DECIMAL}, #{isTree,jdbcType=CHAR},
38 #{typeId,jdbcType=VARCHAR})
39 </insert>
40 <insert id="insertSelective" parameterType="com.pashanhoo.dictionary.model.dto.SysDict">
41 <!--@mbg.generated-->
42 insert into SYS_DICT
43 <trim prefix="(" suffix=")" suffixOverrides=",">
44 <if test="dictId != null">
45 DICTID,
46 </if>
47 <if test="parentId != null">
48 PARENTID,
49 </if>
50 <if test="dcode != null">
51 DCODE,
52 </if>
53 <if test="dname != null">
54 DNAME,
55 </if>
56 <if test="sort != null">
57 SORT,
58 </if>
59 <if test="isTree != null">
60 ISTREE,
61 </if>
62 <if test="typeId != null">
63 TYPEID,
64 </if>
65 </trim>
66 <trim prefix="values (" suffix=")" suffixOverrides=",">
67 <if test="dictId != null">
68 #{dictId,jdbcType=VARCHAR},
69 </if>
70 <if test="parentId != null">
71 #{parentId,jdbcType=VARCHAR},
72 </if>
73 <if test="dcode != null">
74 #{dcode,jdbcType=VARCHAR},
75 </if>
76 <if test="dname != null">
77 #{dname,jdbcType=VARCHAR},
78 </if>
79 <if test="sort != null">
80 #{sort,jdbcType=DECIMAL},
81 </if>
82 <if test="isTree != null">
83 #{isTree,jdbcType=CHAR},
84 </if>
85 <if test="typeId != null">
86 #{typeId,jdbcType=VARCHAR},
87 </if>
88 </trim>
89 </insert>
90 <update id="updateByPrimaryKeySelective" parameterType="com.pashanhoo.dictionary.model.dto.SysDict">
91 <!--@mbg.generated-->
92 update SYS_DICT
93 <set>
94 <if test="parentId != null">
95 PARENTID = #{parentId,jdbcType=VARCHAR},
96 </if>
97 <if test="dcode != null">
98 DCODE = #{dcode,jdbcType=VARCHAR},
99 </if>
100 <if test="dname != null">
101 DNAME = #{dname,jdbcType=VARCHAR},
102 </if>
103 <if test="sort != null">
104 SORT = #{sort,jdbcType=DECIMAL},
105 </if>
106 <if test="isTree != null">
107 ISTREE = #{isTree,jdbcType=CHAR},
108 </if>
109 <if test="typeId != null">
110 TYPEID = #{typeId,jdbcType=VARCHAR},
111 </if>
112 </set>
113 where DICTID = #{dictId,jdbcType=VARCHAR}
114 </update>
115 <update id="updateByPrimaryKey" parameterType="com.pashanhoo.dictionary.model.dto.SysDict">
116 <!--@mbg.generated-->
117 update SYS_DICT
118 set PARENTID = #{parentId,jdbcType=VARCHAR},
119 DCODE = #{dcode,jdbcType=VARCHAR},
120 DNAME = #{dname,jdbcType=VARCHAR},
121 SORT = #{sort,jdbcType=DECIMAL},
122 ISTREE = #{isTree,jdbcType=CHAR},
123 TYPEID = #{typeId,jdbcType=VARCHAR}
124 where DICTID = #{dictId,jdbcType=VARCHAR}
125 </update>
126 <update id="updateBatch" parameterType="java.util.List">
127 <!--@mbg.generated-->
128 update SYS_DICT
129 <trim prefix="set" suffixOverrides=",">
130 <trim prefix="PARENTID = case" suffix="end,">
131 <foreach collection="list" index="index" item="item">
132 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.parentId,jdbcType=VARCHAR}
133 </foreach>
134 </trim>
135 <trim prefix="DCODE = case" suffix="end,">
136 <foreach collection="list" index="index" item="item">
137 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.dcode,jdbcType=VARCHAR}
138 </foreach>
139 </trim>
140 <trim prefix="DNAME = case" suffix="end,">
141 <foreach collection="list" index="index" item="item">
142 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.dname,jdbcType=VARCHAR}
143 </foreach>
144 </trim>
145 <trim prefix="SORT = case" suffix="end,">
146 <foreach collection="list" index="index" item="item">
147 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.sort,jdbcType=DECIMAL}
148 </foreach>
149 </trim>
150 <trim prefix="ISTREE = case" suffix="end,">
151 <foreach collection="list" index="index" item="item">
152 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.isTree,jdbcType=CHAR}
153 </foreach>
154 </trim>
155 <trim prefix="TYPEID = case" suffix="end,">
156 <foreach collection="list" index="index" item="item">
157 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.typeId,jdbcType=VARCHAR}
158 </foreach>
159 </trim>
160 </trim>
161 where DICTID in
162 <foreach close=")" collection="list" item="item" open="(" separator=", ">
163 #{item.dictId,jdbcType=VARCHAR}
164 </foreach>
165 </update>
166 <update id="updateBatchSelective" parameterType="java.util.List">
167 <!--@mbg.generated-->
168 update SYS_DICT
169 <trim prefix="set" suffixOverrides=",">
170 <trim prefix="PARENTID = case" suffix="end,">
171 <foreach collection="list" index="index" item="item">
172 <if test="item.parentId != null">
173 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.parentId,jdbcType=VARCHAR}
174 </if>
175 </foreach>
176 </trim>
177 <trim prefix="DCODE = case" suffix="end,">
178 <foreach collection="list" index="index" item="item">
179 <if test="item.dcode != null">
180 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.dcode,jdbcType=VARCHAR}
181 </if>
182 </foreach>
183 </trim>
184 <trim prefix="DNAME = case" suffix="end,">
185 <foreach collection="list" index="index" item="item">
186 <if test="item.dname != null">
187 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.dname,jdbcType=VARCHAR}
188 </if>
189 </foreach>
190 </trim>
191 <trim prefix="SORT = case" suffix="end,">
192 <foreach collection="list" index="index" item="item">
193 <if test="item.sort != null">
194 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.sort,jdbcType=DECIMAL}
195 </if>
196 </foreach>
197 </trim>
198 <trim prefix="ISTREE = case" suffix="end,">
199 <foreach collection="list" index="index" item="item">
200 <if test="item.isTree != null">
201 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.isTree,jdbcType=CHAR}
202 </if>
203 </foreach>
204 </trim>
205 <trim prefix="TYPEID = case" suffix="end,">
206 <foreach collection="list" index="index" item="item">
207 <if test="item.typeId != null">
208 when DICTID = #{item.dictId,jdbcType=VARCHAR} then #{item.typeId,jdbcType=VARCHAR}
209 </if>
210 </foreach>
211 </trim>
212 </trim>
213 where DICTID in
214 <foreach close=")" collection="list" item="item" open="(" separator=", ">
215 #{item.dictId,jdbcType=VARCHAR}
216 </foreach>
217 </update>
218 <insert id="batchInsert" parameterType="map">
219 <!--@mbg.generated-->
220 insert into SYS_DICT
221 (DICTID, PARENTID, DCODE, DNAME, SORT, ISTREE, TYPEID)
222
223 <foreach collection="list" item="item" index="index" separator="union all">
224 (select #{item.dictId,jdbcType=VARCHAR},
225 #{item.parentId,jdbcType=VARCHAR},
226 #{item.dcode,jdbcType=VARCHAR},
227 #{item.dname,jdbcType=VARCHAR},
228 #{item.sort,jdbcType=DECIMAL},
229 #{item.isTree,jdbcType=CHAR},
230 #{item.typeId,jdbcType=VARCHAR}
231 from dual)
232 </foreach>
233 </insert>
234
235 <select id="getSysDictParent" resultType="com.pashanhoo.dictionary.model.vo.GetSysDictParentVo">
236 select rownum,SD.*
237 from SYS_DICT SD
238 <where>
239 PARENTID is null
240 <if test="request.dcode != null and request.dcode != ''">
241 and DCODE like '%'||#{request.dcode,jdbcType=VARCHAR}||'%'
242 </if>
243 <if test="request.dname != null and request.dname != ''">
244 and DNAME like '%'||#{request.dname,jdbcType=VARCHAR}||'%'
245 </if>
246 </where>
247 </select>
248
249 <select id="getSysDictByTypeId" resultMap="BaseResultMap">
250 select *
251 from SYS_DICT
252 where TYPEID = #{typeId,jdbcType=VARCHAR}
253 and PARENTID is not null
254 </select>
255
256 <delete id="deleteListByPrimaryKey">
257 delete
258 from SYS_DICT
259 where
260 DICTID in
261 <foreach collection="dictWithoutParent" index="index" item="item" open="(" close=")" separator=",">
262 #{item.dictId,jdbcType=VARCHAR}
263 </foreach>
264 </delete>
265
266 <select id="selectAll" resultMap="BaseResultMap">
267 select *
268 from SYS_DICT
269 </select>
270 <select id="getSysDictChildByParentCode" resultType="com.pashanhoo.dictionary.model.dto.SysDict">
271 select dcode,dname
272 from sys_dict t where parentid =(select dictid from sys_dict where dcode = #{dcode,jdbcType=VARCHAR} )
273 CONNECT by PRIOR t.dictid = t.parentid
274 start with dcode = #{dcode,jdbcType=VARCHAR}
275 ORDER siblings BY t.sort
276 </select>
277
278 <delete id="deleteByTypeId">
279 delete from SYS_DICT where TYPEID = #{typeid,jdbcType=VARCHAR} and PARENTID is not null
280 </delete>
281 </mapper>