Browse Source

Merge branch 'h5' of http://git.ycjcjy.com/civilized_city/service into h5

张涛 11 months ago
parent
commit
bde9f56897

+ 2
- 0
src/main/java/com/example/civilizedcity/controller/SysOrgController.java View File

@@ -59,11 +59,13 @@ public class SysOrgController extends BaseController {
59 59
     public ResponseBean list(@ApiParam("页码") @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
60 60
                              @ApiParam("单页数据量") @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
61 61
                              @ApiParam("单位名称") @RequestParam(value = "name", required = false) String name,
62
+                             @ApiParam("父级单位") @RequestParam(value = "parentId", required = false) String parentId,
62 63
                              @ApiParam("是否责任单位") @RequestParam(value = "isResponsible", required = false) Integer isResponsible) throws Exception {
63 64
 
64 65
         IPage<SysOrg> pg = new Page<>(pageNum, pageSize);
65 66
         QueryWrapper<SysOrg> queryWrapper = new QueryWrapper<>();
66 67
         queryWrapper.like(!StringUtils.isEmpty(name), "name", name);
68
+        queryWrapper.eq(!StringUtils.isEmpty(parentId), "org_p_id", parentId);
67 69
         queryWrapper.eq(null != isResponsible, "is_responsible", isResponsible);
68 70
         queryWrapper.gt("status", Constants.STATUS_DELETE);
69 71
         queryWrapper.orderByAsc("sort_no");

+ 36
- 4
src/main/java/com/example/civilizedcity/controller/TaIssueProcessController.java View File

@@ -6,9 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
6 6
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
7 7
 import com.example.civilizedcity.common.*;
8 8
 
9
-import com.example.civilizedcity.entity.SysOrg;
10
-import com.example.civilizedcity.entity.SysUser;
11
-import com.example.civilizedcity.entity.TaIssue;
9
+import com.example.civilizedcity.entity.*;
12 10
 import com.example.civilizedcity.service.SysOrgService;
13 11
 import com.example.civilizedcity.service.TaIssueService;
14 12
 import com.example.civilizedcity.service.TaOrgIssueService;
@@ -17,7 +15,6 @@ import io.swagger.annotations.ApiOperation;
17 15
 import io.swagger.annotations.ApiParam;
18 16
 import org.springframework.beans.factory.annotation.Autowired;
19 17
 import org.springframework.web.bind.annotation.*;
20
-import com.example.civilizedcity.entity.TaIssueProcess;
21 18
 import com.example.civilizedcity.service.TaIssueProcessService;
22 19
 
23 20
 /**
@@ -120,6 +117,41 @@ public class TaIssueProcessController extends BaseController {
120 117
         return ResponseBean.success(taIssueProcess);
121 118
     }
122 119
 
120
+
121
+    /**
122
+     * 交办
123
+     *
124
+     * @param taIssueProcess 实例对象
125
+     * @return 实例对象
126
+     */
127
+//    @SaCheckPermission("manager")
128
+    @ApiOperation("再次交办")
129
+    @PostMapping("/taIssueProcess/assigned2")
130
+    public ResponseBean assigned2(@ApiParam("对象实体") @RequestBody TaIssueProcess taIssueProcess) throws Exception {
131
+        TaIssue taIssue = checkIssue(taIssueProcess);
132
+
133
+        if (StringUtils.isEmpty(taIssueProcess.getNextOrg())) {
134
+            return ResponseBean.error("请指定交办单位");
135
+        }
136
+
137
+        TaOrgIssue taOrgIssue = taOrgIssueService.getByIssueAndOrg(taIssue.getIssueId(), taIssue.getOrgId());
138
+        if (null == taOrgIssue) {
139
+            return ResponseBean.error("未找到当前交办单位");
140
+        }
141
+
142
+//        if (StringUtils.isEmpty(taIssueProcess.getExpireDate())) {
143
+//            return ResponseBean.error("请设置截止日期");
144
+//        } else {
145
+//            if (DateUtils.isAfter(taIssueProcess.getExpireDate() + " 23:59:59")) {
146
+//                return ResponseBean.error("请设置有效的截止日期");
147
+//            }
148
+//        }
149
+
150
+        SysUser sysUser = currentUser();
151
+        taOrgIssueService.createNewIssue2(taIssue, taOrgIssue, taIssueProcess, sysUser);
152
+        return ResponseBean.success(taIssueProcess);
153
+    }
154
+
123 155
     /**
124 156
      * 管理员驳回问题单
125 157
      *

+ 3
- 2
src/main/java/com/example/civilizedcity/mapper/TaIssueProcessMapper.java View File

@@ -12,5 +12,6 @@ import com.example.civilizedcity.entity.TaIssueProcess;
12 12
  */
13 13
 @Mapper
14 14
 public interface TaIssueProcessMapper  extends BaseMapper<TaIssueProcess>{
15
-    
16
-}
15
+
16
+     long removeIssueProcess(Integer issueId, String orgId);
17
+ }

+ 2
- 0
src/main/java/com/example/civilizedcity/service/TaOrgIssueService.java View File

@@ -27,4 +27,6 @@ public interface TaOrgIssueService extends IBaseService<TaOrgIssue> {
27 27
      List<TaIssue> getIssueListBy(Map<String, Object> params);
28 28
 
29 29
      void removeByIssueId(String issueId);
30
+
31
+     void createNewIssue2(TaIssue taIssue, TaOrgIssue originOrgIssue, TaIssueProcess taIssueProcess, SysUser sysUser) throws Exception;
30 32
 }

+ 4
- 3
src/main/java/com/example/civilizedcity/service/impl/TaIssueServiceImpl.java View File

@@ -73,6 +73,7 @@ public class TaIssueServiceImpl extends BaseServiceImpl<TaIssueMapper, TaIssue>
73 73
         // 督察员
74 74
         if (Constants.DUTY_INSPECTOR.equals(duty)) {
75 75
             Map<String, Object> res = baseMapper.statMaIndex(user.getUserId());
76
+            if (null == res) res = new HashMap<>();
76 77
             result.add(new StatVo().setName("已上报").setValue(getStatValueBy(res.get("published_num"), 0)));
77 78
             result.add(new StatVo().setName("已交办").setValue(getStatValueBy(res.get("assigned_num"), 0)));
78 79
             result.add(new StatVo().setName("未交办").setValue(getStatValueBy(res.get("unassigned_num"), 0)));
@@ -89,6 +90,7 @@ public class TaIssueServiceImpl extends BaseServiceImpl<TaIssueMapper, TaIssue>
89 90
         // 单位人员 或者 单位管理员
90 91
         else if (Constants.DUTY_ORG_USER.equals(duty) || Constants.DUTY_ORG_MANAGER.equals(duty)) {
91 92
             Map<String, Object> res = taOrgIssueMapper.statMaIndex(user.getOrgId());
93
+            if (null == res) res = new HashMap<>();
92 94
             result.add(new StatVo().setName("处理中").setValue(getStatValueBy(res.get("doing_num"), 0)));
93 95
             result.add(new StatVo().setName("已办结").setValue(getStatValueBy(res.get("end_num"), 0)));
94 96
             result.add(new StatVo().setName("已逾期").setValue(getStatValueBy(res.get("delay_num"), 0)));
@@ -97,6 +99,7 @@ public class TaIssueServiceImpl extends BaseServiceImpl<TaIssueMapper, TaIssue>
97 99
         // 查询人员
98 100
         else if (Constants.DUTY_QUERY_PERSON.equals(duty)) {
99 101
             Map<String, Object> res = baseMapper.statMaIndex(null);
102
+            if (null == res) res = new HashMap<>();
100 103
             result.add(new StatVo().setName("未处理").setValue(getStatValueBy(res.get("unassigned_num"), 0)));
101 104
             result.add(new StatVo().setName("处理中").setValue(getStatValueBy(res.get("assigned_num"), 0)));
102 105
             result.add(new StatVo().setName("已办结").setValue(getStatValueBy(res.get("end_num"), 0)));
@@ -106,9 +109,7 @@ public class TaIssueServiceImpl extends BaseServiceImpl<TaIssueMapper, TaIssue>
106 109
         else {
107 110
 //            Map<String, Object> res = taFeedbackMapper.statMaIndex(person.getPersonId());
108 111
             Map<String, Object> res = taFeedbackMapper.statMaIndex(user.getUserId());
109
-            if (null == res) {
110
-                res = new HashMap<>();
111
-            }
112
+            if (null == res) res = new HashMap<>();
112 113
             result.add(new StatVo().setName("未处理").setValue(getStatValueBy(res.get("unassigned_num"), 0)));
113 114
             result.add(new StatVo().setName("已处理").setValue(getStatValueBy(res.get("assigned_num"), 0) + getStatValueBy(res.get("end_num"), 0)));
114 115
             result.add(new StatVo().setName("已打回").setValue(getStatValueBy(res.get("reject_num"), 0)));

+ 41
- 0
src/main/java/com/example/civilizedcity/service/impl/TaOrgIssueServiceImpl.java View File

@@ -158,4 +158,45 @@ public class TaOrgIssueServiceImpl extends BaseServiceImpl<TaOrgIssueMapper, TaO
158 158
         taIssueApplyMapper.removeByIssueId(issueId);
159 159
        }
160 160
 
161
+
162
+    @Transactional(rollbackFor = Exception.class)
163
+    @Override
164
+    public void createNewIssue2(TaIssue taIssue, TaOrgIssue originOrgIssue, TaIssueProcess taIssueProcess, SysUser sysUser) throws Exception {
165
+        // 1. 先修改主记录信息
166
+        taIssue.setProcessNode(Constants.PROCESS_ASSIGNED);
167
+        taIssue.setProcessStatus(Constants.APPLY_PASS);
168
+        taIssue.setOrgId(taIssueProcess.getNextOrg());
169
+//        taIssue.setExpireDate(taIssueProcess.getExpireDate());
170
+//        taIssue.setProcessNum(taIssue.getProcessNum() + 1); // 交办次数
171
+        taIssueMapper.updateById(taIssue);
172
+
173
+        // 2. 新增机构问题单
174
+        TaOrgIssue taOrgIssue = new TaOrgIssue();
175
+        taOrgIssue.setIssueId(taIssue.getIssueId());
176
+        taOrgIssue.setOrgId(taIssue.getOrgId());
177
+        taOrgIssue.setProcessNode(Constants.PROCESS_ASSIGNED);
178
+        taOrgIssue.setProcessStatus(null);
179
+        taOrgIssue.setStatus(Constants.STATUS_NORMAL);
180
+        taOrgIssue.setCreateDate(LocalDateTime.now());
181
+        taOrgIssue.setCreateUser(sysUser.getUserId());
182
+        save(taOrgIssue);
183
+        // 父级单位的-暂时先处理为删除
184
+        originOrgIssue.setStatus(-2);
185
+        updateById(originOrgIssue);
186
+
187
+        // 3. 保存流程节点记录
188
+        taIssueProcess.setProcessId(null);
189
+        taIssueProcess.setProcessNode(Constants.PROCESS_ASSIGNED);
190
+        taIssueProcess.setProcessStatus(Constants.APPLY_PASS);
191
+        taIssueProcess.setCreateUser(sysUser.getUserId());
192
+        taIssueProcess.setCreateDate(LocalDateTime.now());
193
+        taIssueProcess.setStatus(Constants.STATUS_NORMAL);
194
+        taIssueProcessMapper.insert(taIssueProcess);
195
+        // 父级单位的流程,暂时更新为删除
196
+        taIssueProcessMapper.removeIssueProcess(taIssue.getIssueId(), originOrgIssue.getOrgId());
197
+
198
+        // 发送短信通知
199
+        applicationEventPublisher.publishEvent(new MessagEvent(this, taOrgIssue));
200
+    }
201
+
161 202
 }

+ 6
- 1
src/main/resources/mapper/TaIssueProcessMapper.xml View File

@@ -2,5 +2,10 @@
2 2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 3
 
4 4
 <mapper namespace="com.example.civilizedcity.mapper.TaIssueProcessMapper">
5
-    
5
+
6
+    <update id="removeIssueProcess">
7
+        update ta_issue_process
8
+        set status = status - 3
9
+        where issue_id = #{issueId} and org_id = #{orgId}
10
+    </update>
6 11
 </mapper>

+ 1
- 1
src/main/resources/mapper/TaOrgIssueMapper.xml View File

@@ -102,7 +102,7 @@
102 102
                 WHERE
103 103
                     s.issue_id = t.issue_id
104 104
                   AND s.org_id = t.org_id
105
-                  AND s.`status` > - 1
105
+                  AND s.`status` &gt; - 1
106 106
             )
107 107
             and t.org_id = #{orgId}
108 108
           and t.`status` &gt; -1