Yansen пре 2 година
родитељ
комит
ef704aec12

db/.back_文明创办/文明创办-backup-2023327191207.pdma.json
Разлика између датотеке није приказан због своје велике величине
Прегледај датотеку


+ 18
- 1
db/文明创办.pdma.json Прегледај датотеку

4
   "avatar": "",
4
   "avatar": "",
5
   "version": "4.1.4",
5
   "version": "4.1.4",
6
   "createdTime": "2022-12-12 09:36:12",
6
   "createdTime": "2022-12-12 09:36:12",
7
-  "updatedTime": "2023-3-23 14:25:10",
7
+  "updatedTime": "2023-3-27 19:12:07",
8
   "dbConns": [],
8
   "dbConns": [],
9
   "profile": {
9
   "profile": {
10
     "default": {
10
     "default": {
3912
           "refDict": "",
3912
           "refDict": "",
3913
           "uiHint": "",
3913
           "uiHint": "",
3914
           "id": "7FF626A4-AF1C-4CF5-B356-D46DB6D534B3"
3914
           "id": "7FF626A4-AF1C-4CF5-B356-D46DB6D534B3"
3915
+        },
3916
+        {
3917
+          "defKey": "copy_from",
3918
+          "defName": "复制来源",
3919
+          "comment": "",
3920
+          "type": "",
3921
+          "len": "",
3922
+          "scale": "",
3923
+          "primaryKey": false,
3924
+          "notNull": false,
3925
+          "autoIncrement": false,
3926
+          "defaultValue": "",
3927
+          "hideInGraph": false,
3928
+          "refDict": "",
3929
+          "extProps": {},
3930
+          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
3931
+          "id": "1F85BFC4-DBF4-4BA5-9BD8-DC9C2BFA1646"
3915
         }
3932
         }
3916
       ],
3933
       ],
3917
       "correlations": [],
3934
       "correlations": [],

+ 1
- 1
pom.xml Прегледај датотеку

10
     </parent>
10
     </parent>
11
     <groupId>com.example</groupId>
11
     <groupId>com.example</groupId>
12
     <artifactId>civilizedCity</artifactId>
12
     <artifactId>civilizedCity</artifactId>
13
-    <version>0.0.7</version>
13
+    <version>0.0.10</version>
14
     <name>civilizedCity</name>
14
     <name>civilizedCity</name>
15
     <description>civilizedCity</description>
15
     <description>civilizedCity</description>
16
     <properties>
16
     <properties>

+ 4
- 2
src/main/java/com/example/civilizedcity/controller/SysOrgController.java Прегледај датотеку

58
     @GetMapping("/sysOrg")
58
     @GetMapping("/sysOrg")
59
     public ResponseBean list(@ApiParam("页码") @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
59
     public ResponseBean list(@ApiParam("页码") @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
60
                              @ApiParam("单页数据量") @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
60
                              @ApiParam("单页数据量") @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
61
-                             @ApiParam("单位名称") @RequestParam(value = "name", required = false) String name) throws Exception {
61
+                             @ApiParam("单位名称") @RequestParam(value = "name", required = false) String name,
62
+                             @ApiParam("是否责任单位") @RequestParam(value = "isResponsible", required = false) Integer isResponsible) throws Exception {
62
 
63
 
63
         IPage<SysOrg> pg = new Page<>(pageNum, pageSize);
64
         IPage<SysOrg> pg = new Page<>(pageNum, pageSize);
64
         QueryWrapper<SysOrg> queryWrapper = new QueryWrapper<>();
65
         QueryWrapper<SysOrg> queryWrapper = new QueryWrapper<>();
65
         queryWrapper.like(!StringUtils.isEmpty(name), "name", name);
66
         queryWrapper.like(!StringUtils.isEmpty(name), "name", name);
67
+        queryWrapper.eq(null != isResponsible, "is_responsible", isResponsible);
66
         queryWrapper.gt("status", Constants.STATUS_DELETE);
68
         queryWrapper.gt("status", Constants.STATUS_DELETE);
67
-        queryWrapper.orderByDesc("create_date");
69
+        queryWrapper.orderByAsc("sort_no");
68
         IPage<SysOrg> result = sysOrgService.page(pg, queryWrapper);
70
         IPage<SysOrg> result = sysOrgService.page(pg, queryWrapper);
69
 
71
 
70
         return ResponseBean.success(result);
72
         return ResponseBean.success(result);

+ 22
- 0
src/main/java/com/example/civilizedcity/controller/TaIssueController.java Прегледај датотеку

240
         return ResponseBean.success(origin);
240
         return ResponseBean.success(origin);
241
     }
241
     }
242
 
242
 
243
+
244
+
245
+    /**
246
+     * 复制问题单
247
+     *
248
+     * @param id 问题单ID
249
+     * @return 实例对象
250
+     */
251
+    @ApiOperation("复制问题单")
252
+    @PostMapping("/taIssue/{id}/copy")
253
+    public ResponseBean copy(@ApiParam("对象ID") @PathVariable Integer id) throws Exception {
254
+
255
+        TaIssue origin = taIssueService.getById(id);
256
+        if (null == origin || origin.getStatus() == Constants.STATUS_DELETE) {
257
+            return ResponseBean.error("未找到原始问题单");
258
+        }
259
+
260
+        SysUser sysUser = currentUser();
261
+        TaIssue taIssue = taIssueService.copyIssue(origin, sysUser);
262
+        return ResponseBean.success(taIssue);
263
+    }
264
+
243
     /**
265
     /**
244
      * 通过主键删除数据
266
      * 通过主键删除数据
245
      *
267
      *

+ 1
- 0
src/main/java/com/example/civilizedcity/controller/TaOrgIssueController.java Прегледај датотеку

81
          queryWrapper.eq("issue_id", issueId);
81
          queryWrapper.eq("issue_id", issueId);
82
          queryWrapper.eq(!Constants.ROOT_ORG.equals(sysUser.getOrgId()), "org_id", StringUtils.isEmpty(orgId) ? sysUser.getOrgId() : orgId);
82
          queryWrapper.eq(!Constants.ROOT_ORG.equals(sysUser.getOrgId()), "org_id", StringUtils.isEmpty(orgId) ? sysUser.getOrgId() : orgId);
83
          queryWrapper.eq("status", Constants.STATUS_NORMAL);
83
          queryWrapper.eq("status", Constants.STATUS_NORMAL);
84
+         queryWrapper.orderByDesc("create_date");
84
          queryWrapper.last("limit 1");
85
          queryWrapper.last("limit 1");
85
 
86
 
86
          TaOrgIssue taOrgIssue = taOrgIssueService.getOne(queryWrapper);
87
          TaOrgIssue taOrgIssue = taOrgIssueService.getOne(queryWrapper);

+ 4
- 0
src/main/java/com/example/civilizedcity/entity/TaIssue.java Прегледај датотеку

128
     @ApiModelProperty(name = "状态", notes = "")
128
     @ApiModelProperty(name = "状态", notes = "")
129
     private Integer status;
129
     private Integer status;
130
 
130
 
131
+    @ExcelIgnore
132
+    @ApiModelProperty(name = "复制来源", notes = "")
133
+    private String copyFrom;
134
+
131
     @ExcelIgnore
135
     @ExcelIgnore
132
     @ApiModelProperty(name = "上报人", notes = "")
136
     @ApiModelProperty(name = "上报人", notes = "")
133
     private String createUser;
137
     private String createUser;

+ 4
- 0
src/main/java/com/example/civilizedcity/mapper/TaAttachMapper.java Прегледај датотеку

20
     long deleteNotIn(@Param("idList") List<Integer> idList,
20
     long deleteNotIn(@Param("idList") List<Integer> idList,
21
                      @Param("ownerType") String ownerType,
21
                      @Param("ownerType") String ownerType,
22
                      @Param("ownerId") String ownerId);
22
                      @Param("ownerId") String ownerId);
23
+
24
+    long copy(@Param("ownerType") String sourceIssue,
25
+              @Param("fromId") String fromId,
26
+              @Param("toId") String toId);
23
 }
27
 }

+ 2
- 0
src/main/java/com/example/civilizedcity/service/TaIssueService.java Прегледај датотеку

31
     void updateIssue(TaIssue taIssue, TaIssue origin) throws Exception;
31
     void updateIssue(TaIssue taIssue, TaIssue origin) throws Exception;
32
 
32
 
33
     void reject(TaIssue taIssue, TaIssueProcess taIssueProcess, SysUser user) throws Exception;
33
     void reject(TaIssue taIssue, TaIssueProcess taIssueProcess, SysUser user) throws Exception;
34
+
35
+    TaIssue copyIssue(TaIssue origin, SysUser sysUser);
34
 }
36
 }

+ 42
- 0
src/main/java/com/example/civilizedcity/service/impl/TaIssueServiceImpl.java Прегледај датотеку

247
         applicationEventPublisher.publishEvent(new MessagEvent(this, taIssue));
247
         applicationEventPublisher.publishEvent(new MessagEvent(this, taIssue));
248
     }
248
     }
249
 
249
 
250
+    @Override
251
+    public TaIssue copyIssue(TaIssue origin, SysUser sysUser) {
252
+
253
+        TaIssue taIssue = new TaIssue();
254
+        taIssue.setCopyFrom(origin.getIssueId().toString());
255
+        taIssue.setTitle(origin.getTitle());
256
+        taIssue.setTypeId(origin.getTypeId());
257
+        taIssue.setTypeName(origin.getTypeName());
258
+        taIssue.setLocId(origin.getLocId());
259
+        taIssue.setLocName(origin.getLocName());
260
+        taIssue.setLocation(origin.getLocation());
261
+        taIssue.setAddr(origin.getAddr());
262
+        taIssue.setContent(origin.getContent());
263
+        taIssue.setProcessNode(Constants.PROCESS_START);
264
+        taIssue.setProcessNum(1);
265
+        taIssue.setSourceType(Constants.SOURCE_ISSUE);
266
+        taIssue.setStatus(Constants.STATUS_NORMAL);
267
+        taIssue.setCreateUser(origin.getCreateUser());
268
+        taIssue.setCreateDate(LocalDateTime.now());
269
+        taIssue.setUserName(origin.getUserName());
270
+        taIssue.setUserDuty(origin.getUserDuty());
271
+
272
+        save(taIssue);
273
+
274
+        // 流程开始
275
+        TaIssueProcess process = new TaIssueProcess();
276
+        process.setIssueId(taIssue.getIssueId());
277
+        process.setOrgId(sysUser.getOrgId());
278
+        process.setProcessNode(taIssue.getProcessNode());
279
+        process.setProcessStatus(taIssue.getProcessStatus());
280
+        process.setStatus(Constants.STATUS_NORMAL);
281
+        process.setCreateUser(sysUser.getUserId());
282
+        process.setUserName(sysUser.getName());
283
+        process.setCreateDate(LocalDateTime.now());
284
+        taIssueProcessMapper.insert(process);
285
+
286
+        // copy 图片
287
+        taAttachMapper.copy(Constants.SOURCE_ISSUE, origin.getIssueId().toString(), taIssue.getIssueId().toString());
288
+
289
+        return taIssue;
290
+    }
291
+
250
     Integer getStatValueBy(Object v, Integer def) {
292
     Integer getStatValueBy(Object v, Integer def) {
251
         if (null == v) return def;
293
         if (null == v) return def;
252
         return Integer.valueOf(v.toString());
294
         return Integer.valueOf(v.toString());

+ 22
- 0
src/main/resources/mapper/TaAttachMapper.xml Прегледај датотеку

2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
 
3
 
4
 <mapper namespace="com.example.civilizedcity.mapper.TaAttachMapper">
4
 <mapper namespace="com.example.civilizedcity.mapper.TaAttachMapper">
5
+    <insert id="copy">
6
+        INSERT INTO ta_attach (
7
+            `file_type`,
8
+            `name`,
9
+            `url`,
10
+            `owner_type`,
11
+            `owner_id`,
12
+            `status`,
13
+            `create_user`
14
+        )
15
+        SELECT
16
+            `file_type`,
17
+            `name`,
18
+            `url`,
19
+            `owner_type`,
20
+            #{toId},
21
+            `status`,
22
+            `create_user`
23
+        FROM ta_attach
24
+        WHERE `owner_type` = #{ownerType}
25
+          AND `owner_id` = #{fromId}
26
+    </insert>
5
     <delete id="deleteNotIn">
27
     <delete id="deleteNotIn">
6
         DELETE
28
         DELETE
7
         FROM
29
         FROM