Yansen 2 lat temu
rodzic
commit
3ccf6e2823

+ 1
- 1
pom.xml Wyświetl plik

@@ -10,7 +10,7 @@
10 10
     </parent>
11 11
     <groupId>com.example</groupId>
12 12
     <artifactId>civilizedCity</artifactId>
13
-    <version>0.0.13</version>
13
+    <version>0.0.15</version>
14 14
     <name>civilizedCity</name>
15 15
     <description>civilizedCity</description>
16 16
     <properties>

+ 58
- 53
src/main/java/com/example/civilizedcity/common/ExportIssueUtil.java Wyświetl plik

@@ -31,7 +31,7 @@ public class ExportIssueUtil {
31 31
     @Autowired
32 32
     private TaOrgIssueService taOrgIssueService;
33 33
 
34
-    public List<IssueExport> getExportList(List<TaIssue> list) throws MalformedURLException {
34
+    public List<IssueExport> getExportList(List<TaIssue> list, Boolean withImage) throws MalformedURLException {
35 35
         List<IssueExport> exportList = new ArrayList<>();
36 36
         if (null != list && list.size() > 0) {
37 37
             List<SysOrg> orgList = sysOrgService.list();
@@ -39,6 +39,7 @@ public class ExportIssueUtil {
39 39
             for (TaIssue taIssue : list) {
40 40
                 IssueExport issueExport = new IssueExport();
41 41
                 issueExport.setIssueId(taIssue.getIssueId());
42
+                issueExport.setTypeName(taIssue.getTypeName());
42 43
                 issueExport.setCreateDate(taIssue.getCreateDate());
43 44
                 issueExport.setLocName(taIssue.getLocName());
44 45
                 issueExport.setAddr(taIssue.getAddr());
@@ -46,6 +47,7 @@ public class ExportIssueUtil {
46 47
                 issueExport.setExpireDate(taIssue.getExpireDate());
47 48
                 issueExport.setProcessNum(taIssue.getProcessNum());
48 49
                 issueExport.setUserName(taIssue.getUserName());
50
+                issueExport.setEndDate(taIssue.getEndDate());
49 51
 
50 52
                 // 转换机构
51 53
                 if (StringUtils.isNotEmpty(taIssue.getOrgId())) {
@@ -69,53 +71,12 @@ public class ExportIssueUtil {
69 71
                     issueExport.setProcessNode("已交办");
70 72
                 }
71 73
 
72
-                // 获取图片列表
73
-                List<TaAttach> attachList = taAttachService.getListBy(Constants.SOURCE_ISSUE, taIssue.getIssueId().toString());
74
-                if (null != attachList && attachList.size() > 0) {
75
-                    List<TaAttach> images = attachList.stream().filter(x -> StringUtils.isEmpty(x.getFileType()) || x.getFileType().equals("image")).collect(Collectors.toList());
76
-
77
-                    int max = 5;
78
-                    for (int i = 0; i < max; i += 1) {
79
-                        TaAttach taAttach = null;
80
-
81
-                        try {
82
-                            taAttach = images.get(i);
83
-                        } catch (Exception e) {
84
-                            //
85
-                        }
86
-
87
-                        if (null != taAttach) {
88
-
89
-                            URL url = new URL(taAttach.getUrl());
90
-                            switch (i) {
91
-                                case 0:
92
-                                    issueExport.setUrl1(url);
93
-                                    break;
94
-                                case 1:
95
-                                    issueExport.setUrl2(url);
96
-                                    break;
97
-                                case 2:
98
-                                    issueExport.setUrl3(url);
99
-                                    break;
100
-                                case 3:
101
-                                    issueExport.setUrl4(url);
102
-                                    break;
103
-                                case 4:
104
-                                    issueExport.setUrl5(url);
105
-                                    break;
106
-                                default:
107
-                                    break;
108
-                            }
109
-                        }
110
-                    }
111
-                }
112
-
113
-                //
114
-                TaOrgIssue taOrgIssue = taOrgIssueService.getByIssueAndOrg(taIssue.getIssueId(), taIssue.getOrgId());
115
-                if (null != taOrgIssue) {
116
-                    List<TaAttach> orgAttachList = taAttachService.getListBy(Constants.SOURCE_ORG_ISSUE, taOrgIssue.getOrgIssueId().toString());
117
-                    if (null != orgAttachList && orgAttachList.size() > 0) {
118
-                        List<TaAttach> images = orgAttachList.stream().filter(x -> StringUtils.isEmpty(x.getFileType()) || x.getFileType().equals("image")).collect(Collectors.toList());
74
+                // 默认是带图的
75
+                if (null == withImage || withImage) {
76
+                    // 获取图片列表
77
+                    List<TaAttach> attachList = taAttachService.getListBy(Constants.SOURCE_ISSUE, taIssue.getIssueId().toString());
78
+                    if (null != attachList && attachList.size() > 0) {
79
+                        List<TaAttach> images = attachList.stream().filter(x -> StringUtils.isEmpty(x.getFileType()) || x.getFileType().equals("image")).collect(Collectors.toList());
119 80
 
120 81
                         int max = 5;
121 82
                         for (int i = 0; i < max; i += 1) {
@@ -128,22 +89,23 @@ public class ExportIssueUtil {
128 89
                             }
129 90
 
130 91
                             if (null != taAttach) {
92
+
131 93
                                 URL url = new URL(taAttach.getUrl());
132 94
                                 switch (i) {
133 95
                                     case 0:
134
-                                        issueExport.setUrl6(url);
96
+                                        issueExport.setUrl1(url);
135 97
                                         break;
136 98
                                     case 1:
137
-                                        issueExport.setUrl7(url);
99
+                                        issueExport.setUrl2(url);
138 100
                                         break;
139 101
                                     case 2:
140
-                                        issueExport.setUrl8(url);
102
+                                        issueExport.setUrl3(url);
141 103
                                         break;
142 104
                                     case 3:
143
-                                        issueExport.setUrl9(url);
105
+                                        issueExport.setUrl4(url);
144 106
                                         break;
145 107
                                     case 4:
146
-                                        issueExport.setUrl10(url);
108
+                                        issueExport.setUrl5(url);
147 109
                                         break;
148 110
                                     default:
149 111
                                         break;
@@ -151,6 +113,49 @@ public class ExportIssueUtil {
151 113
                             }
152 114
                         }
153 115
                     }
116
+
117
+                    //
118
+                    TaOrgIssue taOrgIssue = taOrgIssueService.getByIssueAndOrg(taIssue.getIssueId(), taIssue.getOrgId());
119
+                    if (null != taOrgIssue) {
120
+                        List<TaAttach> orgAttachList = taAttachService.getListBy(Constants.SOURCE_ORG_ISSUE, taOrgIssue.getOrgIssueId().toString());
121
+                        if (null != orgAttachList && orgAttachList.size() > 0) {
122
+                            List<TaAttach> images = orgAttachList.stream().filter(x -> StringUtils.isEmpty(x.getFileType()) || x.getFileType().equals("image")).collect(Collectors.toList());
123
+
124
+                            int max = 5;
125
+                            for (int i = 0; i < max; i += 1) {
126
+                                TaAttach taAttach = null;
127
+
128
+                                try {
129
+                                    taAttach = images.get(i);
130
+                                } catch (Exception e) {
131
+                                    //
132
+                                }
133
+
134
+                                if (null != taAttach) {
135
+                                    URL url = new URL(taAttach.getUrl());
136
+                                    switch (i) {
137
+                                        case 0:
138
+                                            issueExport.setUrl6(url);
139
+                                            break;
140
+                                        case 1:
141
+                                            issueExport.setUrl7(url);
142
+                                            break;
143
+                                        case 2:
144
+                                            issueExport.setUrl8(url);
145
+                                            break;
146
+                                        case 3:
147
+                                            issueExport.setUrl9(url);
148
+                                            break;
149
+                                        case 4:
150
+                                            issueExport.setUrl10(url);
151
+                                            break;
152
+                                        default:
153
+                                            break;
154
+                                    }
155
+                                }
156
+                            }
157
+                        }
158
+                    }
154 159
                 }
155 160
 
156 161
                 exportList.add(issueExport);

+ 94
- 13
src/main/java/com/example/civilizedcity/controller/TaIssueController.java Wyświetl plik

@@ -9,9 +9,7 @@ import com.example.civilizedcity.common.*;
9 9
 
10 10
 import java.net.URL;
11 11
 import java.time.LocalDateTime;
12
-import java.util.ArrayList;
13
-import java.util.List;
14
-import java.util.Optional;
12
+import java.util.*;
15 13
 import java.util.stream.Collectors;
16 14
 
17 15
 import com.example.civilizedcity.entity.*;
@@ -78,16 +76,48 @@ public class TaIssueController extends BaseController {
78 76
     /**
79 77
      * 构造 查询构造器
80 78
      * @param sysUser
81
-     * @param bizStatus
82
-     * @param sourceType
83
-     * @param locId
84
-     * @param mine
85
-     * @param orgId
79
+     * @param params
86 80
      * @return
87 81
      */
88
-    private QueryWrapper<TaIssue> buildQuery(SysUser sysUser, String issueId, String bizStatus, String sourceType, String locId, Boolean mine, String orgId, Boolean all) {
82
+    private QueryWrapper<TaIssue> buildQuery(SysUser sysUser, Map<String, Object> params) {
83
+
84
+        String issueId = (String) params.get("issueId");
85
+        String typeId = (String) params.get("typeId");
86
+        String bizStatus = (String) params.get("bizStatus");
87
+        String sourceType = (String) params.get("sourceType");
88
+        String locId = (String) params.get("locId");
89
+        Boolean mine = (Boolean) params.get("mine");
90
+        String orgId = (String) params.get("orgId");
91
+        String userName = (String) params.get("userName");
92
+        Boolean all = (Boolean) params.get("all");
93
+
94
+        LocalDateTime createDateStart = null;
95
+        LocalDateTime createDateEnd = null;
96
+        if (null != params.get("createDateStart")) {
97
+            String dt1 = (String) params.get("createDateStart");
98
+            String dt2 = (String) params.get("createDateEnd");
99
+
100
+            if (StringUtils.isNotEmpty(dt1)) {
101
+                createDateStart = DateUtils.day2LocalDateime(dt1);
102
+                createDateEnd = DateUtils.day2LocalDateime2(dt2);
103
+            }
104
+        }
105
+
106
+        LocalDateTime endDateStart = null;
107
+        LocalDateTime endDateEnd = null;
108
+        if (null != params.get("endDateStart")) {
109
+            String dt1 = (String) params.get("endDateStart");
110
+            String dt2 = (String) params.get("endDateEnd");
111
+
112
+            if (StringUtils.isNotEmpty(dt1)) {
113
+                endDateStart = DateUtils.day2LocalDateime(dt1);
114
+                endDateEnd = DateUtils.day2LocalDateime2(dt2);
115
+            }
116
+        }
117
+
89 118
         QueryWrapper<TaIssue> queryWrapper = new QueryWrapper<>();
90 119
         queryWrapper.eq(StringUtils.isNotEmpty(issueId), "issue_id", issueId);
120
+        queryWrapper.eq(StringUtils.isNotEmpty(typeId), "type_id", typeId);
91 121
 
92 122
         if (Constants.PROCESS_START.equals(bizStatus)) {
93 123
             // 待交办
@@ -101,7 +131,11 @@ public class TaIssueController extends BaseController {
101 131
         } else if ("expired".equals(bizStatus)) {
102 132
             // 已逾期
103 133
             queryWrapper.ne("process_node", Constants.PROCESS_END);
104
-            queryWrapper.le("expire_date", DateUtils.yestoday());
134
+            queryWrapper.lt("expire_date", DateUtils.today());
135
+        } else if ("expiredEnd".equals(bizStatus)) {
136
+            // 逾期办结
137
+            queryWrapper.eq("process_node", Constants.PROCESS_END);
138
+            queryWrapper.lt("expire_date", DateUtils.today());
105 139
         } else if ("reject".equals(bizStatus)) {
106 140
             // 已打回
107 141
             queryWrapper.eq("process_node", Constants.PROCESS_APPLY_REJECT);
@@ -117,6 +151,9 @@ public class TaIssueController extends BaseController {
117 151
 
118 152
         queryWrapper.eq(StringUtils.isNotEmpty(locId), "loc_id", locId);
119 153
         queryWrapper.eq(StringUtils.isNotEmpty(orgId), "org_id", orgId);
154
+        queryWrapper.like(StringUtils.isNotEmpty(userName), "user_name", userName);
155
+        queryWrapper.between(null != createDateStart, "create_date", createDateStart, createDateEnd);
156
+        queryWrapper.between(null != endDateStart, "end_date", endDateStart, endDateEnd);
120 157
         queryWrapper.eq(Constants.SOURCE_FEEDBACK.equals(sourceType) && !all, "source_type", Constants.SOURCE_FEEDBACK);
121 158
         queryWrapper.ne(!Constants.SOURCE_FEEDBACK.equals(sourceType) && !all, "source_type", Constants.SOURCE_FEEDBACK);
122 159
         queryWrapper.gt("status", Constants.STATUS_DELETE);
@@ -137,11 +174,17 @@ public class TaIssueController extends BaseController {
137 174
     public ResponseBean list(@ApiParam("页码") @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
138 175
                              @ApiParam("单页数据量") @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
139 176
                              @ApiParam("问题单ID") @RequestParam(value = "issueId", required = false) String issueId,
177
+                             @ApiParam("类型ID") @RequestParam(value = "typeId", required = false) String typeId,
140 178
                              @ApiParam("问题单状态") @RequestParam(value = "bizStatus", required = false) String bizStatus,
141 179
                              @ApiParam("来源") @RequestParam(value = "sourceType", required = false) String sourceType,
142 180
                              @ApiParam("点位") @RequestParam(value = "locId", required = false) String locId,
143 181
                              @ApiParam("我的") @RequestParam(value = "mine", defaultValue = "false") Boolean mine,
144 182
                              @ApiParam("责任单位") @RequestParam(value = "orgId", required = false) String orgId,
183
+                             @ApiParam("上报人") @RequestParam(value = "userName", required = false) String userName,
184
+                             @ApiParam(value = "创建时间-开始", example = "2023-03-01") @RequestParam(value = "createDateStart", required = false) String createDateStart,
185
+                             @ApiParam(value = "创建时间-结束", example = "2023-03-31") @RequestParam(value = "createDateEnd", required = false) String createDateEnd,
186
+                             @ApiParam(value = "结单时间-开始", example = "2023-03-01") @RequestParam(value = "endDateStart", required = false) String endDateStart,
187
+                             @ApiParam(value = "结单时间-结束", example = "2023-03-31") @RequestParam(value = "endDateEnd", required = false) String endDateEnd,
145 188
                              @ApiParam("是否全部") @RequestParam(value = "all", defaultValue = "false") Boolean all) throws Exception {
146 189
 
147 190
         SysUser sysUser = currentUser();
@@ -152,8 +195,23 @@ public class TaIssueController extends BaseController {
152 195
             return ResponseBean.error("暂无权限查询数据");
153 196
         }
154 197
 
198
+        Map<String, Object> params = new HashMap<>();
199
+        params.put("issueId", issueId);
200
+        params.put("typeId", typeId);
201
+        params.put("bizStatus", bizStatus);
202
+        params.put("sourceType", sourceType);
203
+        params.put("locId", locId);
204
+        params.put("mine", mine);
205
+        params.put("orgId", orgId);
206
+        params.put("userName", userName);
207
+        params.put("all", all);
208
+        params.put("createDateStart", createDateStart);
209
+        params.put("createDateEnd", createDateEnd);
210
+        params.put("endDateStart", endDateStart);
211
+        params.put("endDateEnd", endDateEnd);
212
+
155 213
         IPage<TaIssue> pg = new Page<>(pageNum, pageSize);
156
-        QueryWrapper<TaIssue> queryWrapper = buildQuery(sysUser, issueId, bizStatus, sourceType, locId, mine, orgId, all);
214
+        QueryWrapper<TaIssue> queryWrapper = buildQuery(sysUser, params);
157 215
         IPage<TaIssue> result = taIssueService.page(pg, queryWrapper);
158 216
 
159 217
         return ResponseBean.success(result);
@@ -171,11 +229,18 @@ public class TaIssueController extends BaseController {
171 229
     @PostMapping("/taIssue/export")
172 230
     public ResponseBean export(@ApiParam("问题单ID") @RequestParam(value = "issueId", required = false) String issueId,
173 231
                                @ApiParam("问题单状态") @RequestParam(value = "bizStatus", required = false) String bizStatus,
232
+                               @ApiParam("类型ID") @RequestParam(value = "typeId", required = false) String typeId,
174 233
                                @ApiParam("来源") @RequestParam(value = "sourceType", required = false) String sourceType,
175 234
                                @ApiParam("点位") @RequestParam(value = "locId", required = false) String locId,
176 235
                                @ApiParam("我的") @RequestParam(value = "mine", defaultValue = "false") Boolean mine,
177 236
                                @ApiParam("责任单位") @RequestParam(value = "orgId", required = false) String orgId,
237
+                               @ApiParam("上报人") @RequestParam(value = "userName", required = false) String userName,
238
+                               @ApiParam(value = "创建时间-开始", example = "2023-03-01") @RequestParam(value = "createDateStart", required = false) String createDateStart,
239
+                               @ApiParam(value = "创建时间-结束", example = "2023-03-31") @RequestParam(value = "createDateEnd", required = false) String createDateEnd,
240
+                               @ApiParam(value = "结单时间-开始", example = "2023-03-01") @RequestParam(value = "endDateStart", required = false) String endDateStart,
241
+                               @ApiParam(value = "结单时间-结束", example = "2023-03-31") @RequestParam(value = "endDateEnd", required = false) String endDateEnd,
178 242
                                @ApiParam("是否全部") @RequestParam(value = "all", defaultValue = "false") Boolean all,
243
+                               @ApiParam("是否带图") @RequestParam(value = "withImage", defaultValue = "true") Boolean withImage,
179 244
                                HttpServletResponse response) throws Exception {
180 245
 
181 246
         SysUser sysUser = currentUser();
@@ -186,10 +251,26 @@ public class TaIssueController extends BaseController {
186 251
             return ResponseBean.error("暂无权限查询数据");
187 252
         }
188 253
 
189
-        QueryWrapper<TaIssue> queryWrapper = buildQuery(sysUser, issueId, bizStatus, sourceType, locId, mine, orgId, all);
254
+
255
+        Map<String, Object> params = new HashMap<>();
256
+        params.put("issueId", issueId);
257
+        params.put("typeId", typeId);
258
+        params.put("bizStatus", bizStatus);
259
+        params.put("sourceType", sourceType);
260
+        params.put("locId", locId);
261
+        params.put("mine", mine);
262
+        params.put("orgId", orgId);
263
+        params.put("userName", userName);
264
+        params.put("all", all);
265
+        params.put("createDateStart", createDateStart);
266
+        params.put("createDateEnd", createDateEnd);
267
+        params.put("endDateStart", endDateStart);
268
+        params.put("endDateEnd", endDateEnd);
269
+
270
+        QueryWrapper<TaIssue> queryWrapper = buildQuery(sysUser, params);
190 271
         List<TaIssue> list = taIssueService.list(queryWrapper);
191 272
 
192
-        List<IssueExport> exportList = exportIssueUtil.getExportList(list);
273
+        List<IssueExport> exportList = exportIssueUtil.getExportList(list, withImage);
193 274
         ExcelUtils.flush(response, IssueExport.class, exportList, "问题单列表");
194 275
 
195 276
         return null;

+ 66
- 3
src/main/java/com/example/civilizedcity/controller/TaOrgIssueController.java Wyświetl plik

@@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 6
 import com.example.civilizedcity.common.*;
7 7
 
8 8
 import java.time.LocalDateTime;
9
+import java.util.HashMap;
9 10
 import java.util.List;
11
+import java.util.Map;
10 12
 import java.util.Optional;
11 13
 
12 14
 import com.example.civilizedcity.entity.*;
@@ -107,11 +109,41 @@ public class TaOrgIssueController extends BaseController {
107 109
                              @ApiParam("问题单ID") @RequestParam(value = "issueId", required = false) String issueId,
108 110
                              @ApiParam("点位") @RequestParam(value = "locId", required = false) String locId,
109 111
                              @ApiParam("数据来源") @RequestParam(value ="sourceType", required = false) String sourceType,
112
+                             @ApiParam("类型ID") @RequestParam(value = "typeId", required = false) String typeId,
113
+                             @ApiParam("上报人") @RequestParam(value = "userName", required = false) String userName,
114
+                             @ApiParam(value = "创建时间-开始", example = "2023-03-01") @RequestParam(value = "createDateStart", required = false) String createDateStart,
115
+                             @ApiParam(value = "创建时间-结束", example = "2023-03-31") @RequestParam(value = "createDateEnd", required = false) String createDateEnd,
116
+                             @ApiParam(value = "结单时间-开始", example = "2023-03-01") @RequestParam(value = "endDateStart", required = false) String endDateStart,
117
+                             @ApiParam(value = "结单时间-结束", example = "2023-03-31") @RequestParam(value = "endDateEnd", required = false) String endDateEnd,
110 118
                              @ApiParam("业务状态") @RequestParam(value ="bizStatus", required = false) String bizStatus) throws Exception {
111 119
         SysUser sysUser = currentUser();
112 120
 
121
+        Map<String, Object> params = new HashMap<>();
122
+        params.put("issueId", issueId);
123
+        params.put("typeId", typeId);
124
+        params.put("bizStatus", bizStatus);
125
+        params.put("sourceType", sourceType);
126
+        params.put("locId", locId);
127
+        params.put("orgId", sysUser.getOrgId());
128
+        params.put("userName", userName);
129
+        if (StringUtils.isNotEmpty(createDateStart)) {
130
+            params.put("createDateStart", DateUtils.day2LocalDateime(createDateStart));
131
+            params.put("createDateEnd", DateUtils.day2LocalDateime2(createDateEnd));
132
+        } else {
133
+            params.put("createDateStart", null);
134
+            params.put("createDateEnd", null);
135
+        }
136
+
137
+        if (StringUtils.isNotEmpty(endDateStart)) {
138
+            params.put("endDateStart", DateUtils.day2LocalDateime(endDateStart));
139
+            params.put("endDateEnd", DateUtils.day2LocalDateime2(endDateEnd));
140
+        } else {
141
+            params.put("endDateStart", null);
142
+            params.put("endDateEnd", null);
143
+        }
144
+
113 145
         IPage<TaIssue> pg = new Page<>(pageNum, pageSize);
114
-        IPage<TaIssue> result = taOrgIssueService.getIssuePageBy(pg, sysUser.getOrgId(), issueId, sourceType, bizStatus, locId);
146
+        IPage<TaIssue> result = taOrgIssueService.getIssuePageBy(pg, params);
115 147
         
116 148
         return ResponseBean.success(result);
117 149
     }
@@ -130,11 +162,42 @@ public class TaOrgIssueController extends BaseController {
130 162
                                 @ApiParam("点位") @RequestParam(value = "locId", required = false) String locId,
131 163
                                 @ApiParam("数据来源") @RequestParam(value ="sourceType", required = false) String sourceType,
132 164
                                 @ApiParam("业务状态") @RequestParam(value ="bizStatus", required = false) String bizStatus,
165
+                                @ApiParam("类型ID") @RequestParam(value = "typeId", required = false) String typeId,
166
+                                @ApiParam("上报人") @RequestParam(value = "userName", required = false) String userName,
167
+                                @ApiParam(value = "创建时间-开始", example = "2023-03-01") @RequestParam(value = "createDateStart", required = false) String createDateStart,
168
+                                @ApiParam(value = "创建时间-结束", example = "2023-03-31") @RequestParam(value = "createDateEnd", required = false) String createDateEnd,
169
+                                @ApiParam(value = "结单时间-开始", example = "2023-03-01") @RequestParam(value = "endDateStart", required = false) String endDateStart,
170
+                                @ApiParam(value = "结单时间-结束", example = "2023-03-31") @RequestParam(value = "endDateEnd", required = false) String endDateEnd,
171
+                                @ApiParam("是否带图") @RequestParam(value = "withImage", defaultValue = "true") Boolean withImage,
133 172
                                 HttpServletResponse response) throws Exception {
134 173
          SysUser sysUser = currentUser();
135 174
 
136
-         List<TaIssue> list = taOrgIssueService.getIssueListBy(sysUser.getOrgId(), issueId, sourceType, bizStatus, locId);
137
-         List<IssueExport> exportList = exportIssueUtil.getExportList(list);
175
+         Map<String, Object> params = new HashMap<>();
176
+         params.put("issueId", issueId);
177
+         params.put("typeId", typeId);
178
+         params.put("bizStatus", bizStatus);
179
+         params.put("sourceType", sourceType);
180
+         params.put("locId", locId);
181
+         params.put("orgId", sysUser.getOrgId());
182
+         params.put("userName", userName);
183
+         if (StringUtils.isNotEmpty(createDateStart)) {
184
+             params.put("createDateStart", DateUtils.day2LocalDateime(createDateStart));
185
+             params.put("createDateEnd", DateUtils.day2LocalDateime2(createDateEnd));
186
+         } else {
187
+             params.put("createDateStart", null);
188
+             params.put("createDateEnd", null);
189
+         }
190
+
191
+         if (StringUtils.isNotEmpty(endDateStart)) {
192
+             params.put("endDateStart", DateUtils.day2LocalDateime(endDateStart));
193
+             params.put("endDateEnd", DateUtils.day2LocalDateime2(endDateEnd));
194
+         } else {
195
+             params.put("endDateStart", null);
196
+             params.put("endDateEnd", null);
197
+         }
198
+
199
+         List<TaIssue> list = taOrgIssueService.getIssueListBy(params);
200
+         List<IssueExport> exportList = exportIssueUtil.getExportList(list, withImage);
138 201
 
139 202
          ExcelUtils.flush(response, IssueExport.class, exportList, "问题单列表");
140 203
          return null;

+ 2
- 13
src/main/java/com/example/civilizedcity/mapper/TaOrgIssueMapper.java Wyświetl plik

@@ -18,13 +18,7 @@ import java.util.Map;
18 18
 @Mapper
19 19
 public interface TaOrgIssueMapper  extends BaseMapper<TaOrgIssue>{
20 20
 
21
-     IPage<TaIssue> getIssuePageBy(IPage<TaIssue> pg,
22
-                                   @Param("orgId") String orgId,
23
-                                   @Param("issueId") String issueId,
24
-                                   @Param("sourceType") String sourceType,
25
-                                   @Param("processNode") String processNode,
26
-                                   @Param("isExpire") Boolean isExpire,
27
-                                   @Param("locId") String locId);
21
+     IPage<TaIssue> getIssuePageBy(IPage<TaIssue> pg, @Param("params") Map<String, Object> params);
28 22
 
29 23
      TaOrgIssue getByIssueAndOrg(@Param("issueId") Integer issueId, @Param("orgId") String orgId);
30 24
 
@@ -32,10 +26,5 @@ public interface TaOrgIssueMapper  extends BaseMapper<TaOrgIssue>{
32 26
 
33 27
     int updateProcess(@Param("issueId") Integer issueId,@Param("orgId") String orgId,@Param("processStatus") String processStatus);
34 28
 
35
-    List<TaIssue> getIssueListBy(@Param("orgId") String orgId,
36
-                                 @Param("issueId") String issueId,
37
-                                 @Param("sourceType") String sourceType,
38
-                                 @Param("processNode") String processNode,
39
-                                 @Param("isExpire") Boolean isExpire,
40
-                                 @Param("locId") String locId);
29
+    List<TaIssue> getIssueListBy(@Param("params") Map<String, Object> params);
41 30
 }

+ 3
- 2
src/main/java/com/example/civilizedcity/service/TaOrgIssueService.java Wyświetl plik

@@ -7,6 +7,7 @@ import com.example.civilizedcity.entity.TaIssueProcess;
7 7
 import com.example.civilizedcity.entity.TaOrgIssue;
8 8
 
9 9
 import java.util.List;
10
+import java.util.Map;
10 11
 
11 12
 /**
12 13
  * 单位问题单;(ta_org_issue)表服务接口
@@ -15,7 +16,7 @@ import java.util.List;
15 16
  */
16 17
 public interface TaOrgIssueService extends IBaseService<TaOrgIssue> {
17 18
 
18
-     IPage<TaIssue> getIssuePageBy(IPage<TaIssue> pg, String orgId, String issueId, String sourceType, String bizStatus, String locId);
19
+     IPage<TaIssue> getIssuePageBy(IPage<TaIssue> pg, Map<String, Object> params);
19 20
 
20 21
      void createNewIssue(TaIssue taIssue, TaIssueProcess taIssueProcess, SysUser sysUser) throws Exception;
21 22
 
@@ -23,5 +24,5 @@ public interface TaOrgIssueService extends IBaseService<TaOrgIssue> {
23 24
 
24 25
      void updateData(TaOrgIssue taOrgIssue) throws Exception;
25 26
 
26
-     List<TaIssue> getIssueListBy(String orgId, String issueId, String sourceType, String bizStatus, String locId);
27
+     List<TaIssue> getIssueListBy(Map<String, Object> params);
27 28
  }

+ 18
- 22
src/main/java/com/example/civilizedcity/service/impl/TaOrgIssueServiceImpl.java Wyświetl plik

@@ -13,6 +13,7 @@ import org.springframework.transaction.annotation.Transactional;
13 13
 import java.time.LocalDateTime;
14 14
 import java.util.ArrayList;
15 15
 import java.util.List;
16
+import java.util.Map;
16 17
 
17 18
 /**
18 19
  * 单位问题单;(ta_org_issue)表服务实现类
@@ -35,21 +36,27 @@ public class TaOrgIssueServiceImpl extends BaseServiceImpl<TaOrgIssueMapper, TaO
35 36
     @Autowired
36 37
     TaAttachMapper taAttachMapper;
37 38
 
38
-    @Override
39
-    public IPage<TaIssue> getIssuePageBy(IPage<TaIssue> pg, String orgId, String issueId, String sourceType, String bizStatus, String locId) {
40
-
41
-        String processNode = null;
42
-        Boolean isExpire = false;
39
+    private void transParams(Map<String, Object> params) {
40
+        params.put("processNode", null);
41
+        params.put("isExpire", false);
42
+        params.put("expiredEnd", false);
43 43
 
44
+        String bizStatus = (String) params.get("bizStatus");
44 45
         if (!StringUtils.isEmpty(bizStatus)) {
45 46
             if ("expire".equals(bizStatus) || "expired".equals(bizStatus)) {
46
-                isExpire = true;
47
+                params.put("isExpire", true);
48
+            } else if ("expiredEnd".equals(bizStatus)) {
49
+                params.put("expiredEnd", true);
47 50
             } else {
48
-                processNode = bizStatus;
51
+                params.put("processNode", bizStatus);
49 52
             }
50 53
         }
54
+    }
51 55
 
52
-        return baseMapper.getIssuePageBy(pg, orgId, issueId, sourceType, processNode, isExpire, locId);
56
+    @Override
57
+    public IPage<TaIssue> getIssuePageBy(IPage<TaIssue> pg, Map<String, Object> params) {
58
+        transParams(params);
59
+        return baseMapper.getIssuePageBy(pg, params);
53 60
     }
54 61
 
55 62
     @Transactional(rollbackFor = Exception.class)
@@ -129,19 +136,8 @@ public class TaOrgIssueServiceImpl extends BaseServiceImpl<TaOrgIssueMapper, TaO
129 136
     }
130 137
 
131 138
     @Override
132
-    public List<TaIssue> getIssueListBy(String orgId, String issueId, String sourceType, String bizStatus, String locId) {
133
-
134
-        String processNode = null;
135
-        Boolean isExpire = false;
136
-
137
-        if (!StringUtils.isEmpty(bizStatus)) {
138
-            if ("expire".equals(bizStatus) || "expired".equals(bizStatus)) {
139
-                isExpire = true;
140
-            } else {
141
-                processNode = bizStatus;
142
-            }
143
-        }
144
-
145
-        return baseMapper.getIssueListBy(orgId, issueId, sourceType, processNode, isExpire, locId);
139
+    public List<TaIssue> getIssueListBy(Map<String, Object> params) {
140
+        transParams(params);
141
+        return baseMapper.getIssueListBy(params);
146 142
     }
147 143
 }

+ 29
- 20
src/main/java/com/example/civilizedcity/vo/IssueExport.java Wyświetl plik

@@ -24,103 +24,112 @@ import java.time.LocalDateTime;
24 24
 public class IssueExport {
25 25
 
26 26
     @ColumnWidth(24)
27
-    @ExcelProperty(value = "问题单号", index = 0)
27
+    @ExcelProperty(value = "问题单号")
28 28
     @ApiModelProperty(name = "问题ID", notes = "")
29 29
     private Integer issueId;
30 30
 
31
+    @ColumnWidth(24)
32
+    @ExcelProperty(value = "问题类型")
33
+    @ApiModelProperty(name = "问题类型", notes = "")
34
+    private String typeName;
31 35
 
32 36
     @ColumnWidth(30)
33
-    @ExcelProperty(value = "上报日期", index = 1, converter = LocalDateTimeConverter.class)
37
+    @ExcelProperty(value = "上报日期", converter = LocalDateTimeConverter.class)
34 38
     @ApiModelProperty(name = "创建时间", notes = "")
35 39
     private LocalDateTime createDate;
36 40
 
37 41
     @ColumnWidth(30)
38
-    @ExcelProperty(value = "点位", index = 2)
42
+    @ExcelProperty(value = "点位")
39 43
     @ApiModelProperty(name = "点位名称", notes = "")
40 44
     private String locName;
41 45
 
42 46
     @ColumnWidth(50)
43
-    @ExcelProperty(value = "位置", index = 3)
47
+    @ExcelProperty(value = "位置")
44 48
     @ApiModelProperty(name = "具体位置", notes = "")
45 49
     private String addr;
46 50
 
47 51
     @ColumnWidth(80)
48
-    @ExcelProperty(value = "问题详情", index = 4)
52
+    @ExcelProperty(value = "问题详情")
49 53
     @ApiModelProperty(name = "问题详情", notes = "")
50 54
     private String content;
51 55
 
52 56
     @ColumnWidth(40)
53
-    @ExcelProperty(value = "责任单位", index = 5)
57
+    @ExcelProperty(value = "责任单位")
54 58
     @ApiModelProperty(name = "责任单位", notes = "")
55 59
     private String orgId;
56 60
 
57 61
     @ColumnWidth(20)
58
-    @ExcelProperty(value = "流程状态", index = 6)
62
+    @ExcelProperty(value = "流程状态")
59 63
     @ApiModelProperty(name = "流程节点", notes = "")
60 64
     private String processNode;
61 65
 
62 66
     @ColumnWidth(30)
63
-    @ExcelProperty(value = "截止时间", index = 7)
67
+    @ExcelProperty(value = "截止时间")
64 68
     @ApiModelProperty(name = "截止时间", notes = "YYYY-MM-DD")
65 69
     private String expireDate;
66 70
 
67 71
     @ColumnWidth(30)
68
-    @ExcelProperty(value = "交办次数", index = 8)
72
+    @ExcelProperty(value = "办结时间", converter = LocalDateTimeConverter.class)
73
+    @ApiModelProperty(name = "办结时间", notes = "")
74
+    private LocalDateTime endDate;
75
+
76
+    @ColumnWidth(30)
77
+    @ExcelProperty(value = "交办次数")
69 78
     @ApiModelProperty(name = "交办次数", notes = "")
70 79
     private Integer processNum;
71 80
 
72 81
     @ColumnWidth(26)
73
-    @ExcelProperty(value = "上报人", index = 9)
82
+    @ExcelProperty(value = "上报人")
74 83
     @ApiModelProperty(name = "上报人", notes = "")
75 84
     private String userName;
76 85
 
77 86
     @ColumnWidth(30)
78
-    @ExcelProperty(value = "问题图片", index = 10)
87
+    @ExcelProperty(value = "问题图片")
79 88
     @ApiModelProperty(name = "问题图片", notes = "")
80 89
     private URL url1;
81 90
 
82 91
     @ColumnWidth(30)
83
-    @ExcelProperty(value = "问题图片", index = 11)
92
+    @ExcelProperty(value = "问题图片")
84 93
     @ApiModelProperty(name = "问题图片", notes = "")
85 94
     private URL url2;
86 95
 
87 96
     @ColumnWidth(30)
88
-    @ExcelProperty(value = "问题图片", index = 12)
97
+    @ExcelProperty(value = "问题图片")
89 98
     @ApiModelProperty(name = "问题图片", notes = "")
90 99
     private URL url3;
91 100
 
92 101
     @ColumnWidth(30)
93
-    @ExcelProperty(value = "问题图片", index = 13)
102
+    @ExcelProperty(value = "问题图片")
94 103
     @ApiModelProperty(name = "问题图片", notes = "")
95 104
     private URL url4;
96 105
 
97 106
     @ColumnWidth(30)
98
-    @ExcelProperty(value = "问题图片", index = 14)
107
+    @ExcelProperty(value = "问题图片")
99 108
     @ApiModelProperty(name = "问题图片", notes = "")
100 109
     private URL url5;
101 110
 
102 111
     @ColumnWidth(30)
103
-    @ExcelProperty(value = "处理结果图片", index = 15)
112
+    @ExcelProperty(value = "处理结果图片")
104 113
     @ApiModelProperty(name = "处理结果图片", notes = "")
105 114
     private URL url6;
106 115
 
107 116
     @ColumnWidth(30)
108
-    @ExcelProperty(value = "处理结果图片", index = 16)
117
+    @ExcelProperty(value = "处理结果图片")
109 118
     @ApiModelProperty(name = "处理结果图片", notes = "")
110 119
     private URL url7;
111 120
 
112 121
     @ColumnWidth(30)
113
-    @ExcelProperty(value = "处理结果图片", index = 17)
122
+    @ExcelProperty(value = "处理结果图片")
114 123
     @ApiModelProperty(name = "处理结果图片", notes = "")
115 124
     private URL url8;
116 125
 
117 126
     @ColumnWidth(30)
118
-    @ExcelProperty(value = "处理结果图片", index = 18)
127
+    @ExcelProperty(value = "处理结果图片")
119 128
     @ApiModelProperty(name = "处理结果图片", notes = "")
120 129
     private URL url9;
121 130
 
122 131
     @ColumnWidth(30)
123
-    @ExcelProperty(value = "处理结果图片", index = 19)
132
+    @ExcelProperty(value = "处理结果图片")
124 133
     @ApiModelProperty(name = "处理结果图片", notes = "")
125 134
     private URL url10;
126 135
 }

+ 1
- 1
src/main/resources/mapper/TaIssueMapper.xml Wyświetl plik

@@ -73,7 +73,7 @@
73 73
             UUID_SHORT( ) AS id,
74 74
             IFNULL( SUM( IF ( t.process_node = '03', t.process_num, 0 ) ), 0 ) AS endNum,
75 75
             IFNULL( SUM( IF ( t.process_node LIKE '02%', t.process_num, 0 ) ), 0 ) AS assignedNum,
76
-            IFNULL( SUM( IF ( TO_DAYS(t.expire_date) &lt; TO_DAYS(DATE_SUB(NOW(), INTERVAL 1 DAY)) AND t.process_node != '03', t.process_num, 0 ) ), 0 ) AS expireNum
76
+            IFNULL( SUM( IF ( TO_DAYS(t.expire_date) &lt; TO_DAYS(NOW()) AND t.process_node != '03', t.process_num, 0 ) ), 0 ) AS expireNum
77 77
         FROM
78 78
             ta_issue t
79 79
         WHERE

+ 28
- 12
src/main/resources/mapper/TaOrgIssueMapper.xml Wyświetl plik

@@ -26,25 +26,41 @@
26 26
                 AND s.org_id = t.org_id
27 27
                 AND s.`status` &gt; -1
28 28
             )
29
-            AND t.org_id = #{orgId}
30
-        <if test="issueId != null and issueId != ''">
31
-            AND t.issue_id = #{issueId}
29
+            AND t.org_id = #{params.orgId}
30
+        <if test="params.issueId != null and params.issueId != ''">
31
+            AND t.issue_id = #{params.issueId}
32 32
         </if>
33
-        <if test="sourceType != null and sourceType == 'feedback'">
33
+        <if test="params.typeId != null and params.typeId != ''">
34
+            AND t.type_id = #{params.typeId}
35
+        </if>
36
+        <if test="params.sourceType != null and params.sourceType == 'feedback'">
34 37
             AND t.source_type = 'feedback'
35 38
         </if>
36
-        <if test="sourceType != null and sourceType != 'feedback'">
39
+        <if test="params.sourceType != null and params.sourceType != 'feedback'">
37 40
             AND t.source_type in ('check', 'inspector')
38 41
         </if>
39
-        <if test="locId != null and locId != ''">
40
-            AND t.loc_id = #{locId}
42
+        <if test="params.locId != null and params.locId != ''">
43
+            AND t.loc_id = #{params.locId}
41 44
         </if>
42
-        <if test="processNode != null and processNode != ''">
43
-            AND t.process_node LIKE CONCAT(#{processNode}, '%')
45
+        <if test="params.processNode != null and params.processNode != ''">
46
+            AND t.process_node LIKE CONCAT(#{params.processNode}, '%')
44 47
         </if>
45
-        <if test="isExpire != null and isExpire">
48
+        <if test="params.isExpire != null and params.isExpire">
46 49
             AND t.process_node != '03'
47
-            AND TO_DAYS(t.expire_date) &lt; TO_DAYS(DATE_SUB(now(), INTERVAL 1 DAY))
50
+            AND TO_DAYS(t.expire_date) &lt; TO_DAYS(now())
51
+        </if>
52
+        <if test="params.expiredEnd != null and params.expiredEnd">
53
+            AND t.process_node = '03'
54
+            AND TO_DAYS(t.expire_date) &lt; TO_DAYS(now())
55
+        </if>
56
+        <if test="params.createDateStart != null">
57
+            AND t.create_date BETWEEN #{params.createDateStart} AND #{params.createDateEnd}
58
+        </if>
59
+        <if test="params.endDateStart != null">
60
+            AND t.end_date BETWEEN #{params.endDateStart} AND #{params.endDateEnd}
61
+        </if>
62
+        <if test="params.userName != null and params.userName != ''">
63
+            AND t.user_name LIKE CONCAT('%', #{params.userName}, '%')
48 64
         </if>
49 65
             AND t.`status` &gt; -1
50 66
         ORDER BY
@@ -68,7 +84,7 @@
68 84
     </select>
69 85
     <select id="statMaIndex" resultType="java.util.Map">
70 86
         select
71
-            SUM( IF (TO_DAYS(DATE_SUB(NOW(), INTERVAL 1 DAY)) > TO_DAYS( t.expire_date ) AND t.process_node != '03', 1, 0 ) ) AS delay_num,
87
+            SUM( IF (TO_DAYS(NOW()) &gt; TO_DAYS( t.expire_date ) AND t.process_node != '03', 1, 0 ) ) AS delay_num,
72 88
             SUM( IF (t.process_node = '03', 1, 0 ) ) AS end_num,
73 89
             SUM( IF (t.process_node != '03', 1, 0 ) ) AS doing_num
74 90
         from ta_issue t