gaodd 5 yıl önce
ebeveyn
işleme
fa0447d709

+ 3 - 6
src/main/java/com/unissoft/feign/SystemFeign.java

@@ -1,12 +1,9 @@
1 1
 package com.unissoft.feign;
2 2
 
3 3
 import com.unissoft.MyConstant;
4
-import com.unissoft.result.ResultView;
4
+import com.unissoft.model.BasicsWarehouse;
5 5
 import org.springframework.cloud.openfeign.FeignClient;
6 6
 import org.springframework.web.bind.annotation.GetMapping;
7
-import org.springframework.web.bind.annotation.PostMapping;
8
-import org.springframework.web.bind.annotation.RequestMapping;
9
-import org.springframework.web.bind.annotation.RequestMethod;
10 7
 import org.springframework.web.bind.annotation.RequestParam;
11 8
 
12 9
 
@@ -20,7 +17,7 @@ public interface SystemFeign {
20 17
     //@PostMapping("/oauth/token")
21 18
    // Map<String, Object> token(@RequestParam("username") String username, @RequestParam("password") String password, @RequestParam("client_id") String client_id, @RequestParam("client_secret") String client_secret, @RequestParam("grant_type") String grant_type, @RequestParam("scope") String scope);
22 19
 
23
-	@GetMapping(value = "/basicsWarehouse/authority/getById")
24
-	ResultView getById(@RequestParam("id") int id);
20
+	@GetMapping(value = "/basicsWarehouse/authority/getByIdHouse")
21
+	BasicsWarehouse getById(@RequestParam("id") Integer id);
25 22
 
26 23
 }

+ 2 - 2
src/main/java/com/unissoft/feign/SystemHystrix.java

@@ -1,6 +1,6 @@
1 1
 package com.unissoft.feign;
2 2
 
3
-import com.unissoft.result.ResultView;
3
+import com.unissoft.model.BasicsWarehouse;
4 4
 import org.slf4j.Logger;
5 5
 import org.slf4j.LoggerFactory;
6 6
 import org.springframework.stereotype.Component;
@@ -15,7 +15,7 @@ public class SystemHystrix implements SystemFeign {
15 15
     private final Logger logger = LoggerFactory.getLogger(SystemHystrix.class);
16 16
 
17 17
 	@Override
18
-	public ResultView getById(int id) {
18
+	public BasicsWarehouse getById(Integer id) {
19 19
 		// TODO Auto-generated method stub
20 20
 		System.err.println("调用csc-szls-system-manage服务getById方法失败!");
21 21
         logger.error("调用csc-szls-system-manage服务getById方法失败!");

+ 122 - 122
src/main/java/com/unissoft/ventilation/controller/ProcessAuditController.java

@@ -1,122 +1,122 @@
1
-package com.unissoft.ventilation.controller;
2
-
3
-
4
-import java.util.HashMap;
5
-import java.util.List;
6
-import java.util.Map;
7
-
8
-import org.springframework.beans.factory.annotation.Autowired;
9
-import org.springframework.web.bind.annotation.GetMapping;
10
-import org.springframework.web.bind.annotation.PathVariable;
11
-import org.springframework.web.bind.annotation.PostMapping;
12
-import org.springframework.web.bind.annotation.RequestBody;
13
-import org.springframework.web.bind.annotation.RequestMapping;
14
-
15
-import org.springframework.web.bind.annotation.RestController;
16
-
17
-import com.github.pagehelper.PageInfo;
18
-import com.google.common.collect.Maps;
19
-import com.unissoft.model.ProcessAudit;
20
-import com.unissoft.result.PageParam;
21
-import com.unissoft.result.ResultView;
22
-import com.unissoft.ventilation.service.ProcessAuditService;
23
-
24
-import io.swagger.annotations.Api;
25
-import io.swagger.annotations.ApiOperation;
26
-
27
-/**
28
- * <p>
29
- *  前端控制器
30
- * </p>
31
- *
32
- * @author My SunShine
33
- * @since 2020-12-08
34
- */
35
-@Api(description = "审批流程详情控制器")
36
-@RestController
37
-@RequestMapping("/ventilation/processAudit")
38
-public class ProcessAuditController {
39
-
40
-	@Autowired
41
-    private ProcessAuditService processAuditService;
42
-	
43
-	/**
44
-	 * 新增一个审批流程数据第一次 新增提交
45
-	 * @param parameter
46
-	 * @return
47
-	 */
48
-	@ApiOperation(value = "新增", notes = "")
49
-    @PostMapping("/add")
50
-    public ResultView add(@RequestBody String parameter) {
51
-		processAuditService.add(parameter);
52
-        return ResultView.success();
53
-    }
54
-	
55
-	
56
-	/**
57
-	 * 机械通风列表
58
-	 */
59
-    @ApiOperation(value = "分页条件查询", notes = "提交参数:{\"pageIndex\":1,\"pageSize\":10,  \"condition\":\"{\'startTime\':\'\',\'endTime\':\'\'}\"}")
60
-    @PostMapping("/getPage")
61
-    public ResultView getPage(@RequestBody PageParam pageParam) throws Exception{
62
-        PageInfo<ProcessAudit> page = processAuditService.getPage(pageParam);
63
-        return ResultView.success(page);
64
-    }
65
-    
66
-    /**
67
-     * 通过审批第一条数据的id查询所有数据
68
-     * @param id
69
-     * @return
70
-     */
71
-    @ApiOperation(value = "根据id和审批状态查询", notes = "")
72
-    @GetMapping("/getById/{id}")
73
-    public ResultView getById(@PathVariable Integer id) {
74
-    	List<Map<String,Object>> list = processAuditService.getAllById(id);
75
-        return ResultView.success(list);
76
-    }
77
-    
78
-    
79
-    /**
80
-     * 删除
81
-     * @param id
82
-     * @return
83
-     */
84
-    @ApiOperation(value = "根据id删除数据", notes = "")
85
-    @GetMapping("/deleteById/{id}")
86
-    public ResultView deleteById(@PathVariable Integer id) {
87
-    	 processAuditService.deleteById(id);
88
-        return ResultView.success();
89
-    }
90
-    
91
-    
92
-    /**
93
-     * 待审批列表(待处理列表)
94
-     * @throws Exception 
95
-     */
96
-    @ApiOperation(value = "分页条件查询", notes = "提交参数:{\"pageIndex\":1,\"pageSize\":10,\"condition\":\"{\'startTime\':\'\',\'endTime\':\'\',\'userId\':\'\'}\"}")
97
-    @PostMapping("/toDisposeList")
98
-    public ResultView toDisposeList(@RequestBody PageParam pageParam) throws Exception {
99
-        PageInfo<ProcessAudit> page = processAuditService.toDisposeList(pageParam);
100
-        return ResultView.success(page);
101
-    }
102
-    
103
-    /**
104
-     * 审批
105
-     */
106
-    @ApiOperation(value = "审批", notes = "")
107
-    @PostMapping("/audit")
108
-    public ResultView audit(@RequestBody String parameter) {
109
-		processAuditService.audit(parameter);
110
-        return ResultView.success();
111
-    }
112
-    
113
-    /**
114
-     * 通风记录详情的增加(审批之后的操作)
115
-     */
116
-    @ApiOperation(value = "通风记录详情的增加", notes = "")
117
-    @PostMapping("/detailsAdd")
118
-    public ResultView detailsAdd(@RequestBody String parameter) {
119
-		processAuditService.detailsAdd(parameter);
120
-        return ResultView.success();
121
-    }
122
-}
1
+package com.unissoft.ventilation.controller;
2
+
3
+
4
+import java.util.HashMap;
5
+import java.util.List;
6
+import java.util.Map;
7
+
8
+import org.springframework.beans.factory.annotation.Autowired;
9
+import org.springframework.web.bind.annotation.GetMapping;
10
+import org.springframework.web.bind.annotation.PathVariable;
11
+import org.springframework.web.bind.annotation.PostMapping;
12
+import org.springframework.web.bind.annotation.RequestBody;
13
+import org.springframework.web.bind.annotation.RequestMapping;
14
+
15
+import org.springframework.web.bind.annotation.RestController;
16
+
17
+import com.github.pagehelper.PageInfo;
18
+import com.google.common.collect.Maps;
19
+import com.unissoft.model.ProcessAudit;
20
+import com.unissoft.result.PageParam;
21
+import com.unissoft.result.ResultView;
22
+import com.unissoft.ventilation.service.ProcessAuditService;
23
+
24
+import io.swagger.annotations.Api;
25
+import io.swagger.annotations.ApiOperation;
26
+
27
+/**
28
+ * <p>
29
+ *  前端控制器
30
+ * </p>
31
+ *
32
+ * @author My SunShine
33
+ * @since 2020-12-08
34
+ */
35
+@Api(description = "审批流程详情控制器")
36
+@RestController
37
+@RequestMapping("/ventilation/processAudit")
38
+public class ProcessAuditController {
39
+
40
+	@Autowired
41
+    private ProcessAuditService processAuditService;
42
+	
43
+	/**
44
+	 * 新增一个审批流程数据第一次 新增提交
45
+	 * @param parameter
46
+	 * @return
47
+	 */
48
+	@ApiOperation(value = "新增", notes = "")
49
+    @PostMapping("/add")
50
+    public ResultView add(@RequestBody String parameter) {
51
+		processAuditService.add(parameter);
52
+        return ResultView.success();
53
+    }
54
+	
55
+	
56
+	/**
57
+	 * 机械通风列表
58
+	 */
59
+    @ApiOperation(value = "分页条件查询", notes = "提交参数:{\"pageIndex\":1,\"pageSize\":10,  \"condition\":\"{\'startTime\':\'\',\'endTime\':\'\'}\"}")
60
+    @PostMapping("/getPage")
61
+    public ResultView getPage(@RequestBody PageParam pageParam) throws Exception{
62
+        PageInfo<ProcessAudit> page = processAuditService.getPage(pageParam);
63
+        return ResultView.success(page);
64
+    }
65
+    
66
+    /**
67
+     * 通过审批第一条数据的id查询所有数据
68
+     * @param id
69
+     * @return
70
+     */
71
+    @ApiOperation(value = "根据id和审批状态查询", notes = "")
72
+    @GetMapping("/getById/{id}")
73
+    public ResultView getById(@PathVariable Integer id) {
74
+    	List<Map<String,Object>> list = processAuditService.getAllById(id);
75
+        return ResultView.success(list);
76
+    }
77
+    
78
+    
79
+    /**
80
+     * 删除
81
+     * @param id
82
+     * @return
83
+     */
84
+    @ApiOperation(value = "根据id删除数据", notes = "")
85
+    @GetMapping("/deleteById/{id}")
86
+    public ResultView deleteById(@PathVariable Integer id) {
87
+    	 processAuditService.deleteById(id);
88
+        return ResultView.success();
89
+    }
90
+    
91
+    
92
+    /**
93
+     * 待审批列表(待处理列表)
94
+     * @throws Exception 
95
+     */
96
+    @ApiOperation(value = "分页条件查询,userId必填", notes = "提交参数:{\"pageIndex\":1,\"pageSize\":10,\"condition\":\"{\'startTime\':\'\',\'endTime\':\'\',\'userId\':\'\'}\"}")
97
+    @PostMapping("/toDisposeList")
98
+    public ResultView toDisposeList(@RequestBody PageParam pageParam) throws Exception {
99
+        PageInfo<ProcessAudit> page = processAuditService.toDisposeList(pageParam);
100
+        return ResultView.success(page);
101
+    }
102
+    
103
+    /**
104
+     * 审批
105
+     */
106
+    @ApiOperation(value = "审批", notes = "")
107
+    @PostMapping("/audit")
108
+    public ResultView audit(@RequestBody String parameter) {
109
+		processAuditService.audit(parameter);
110
+        return ResultView.success();
111
+    }
112
+    
113
+    /**
114
+     * 通风记录详情的增加(审批之后的操作)
115
+     */
116
+    @ApiOperation(value = "通风记录详情的增加", notes = "")
117
+    @PostMapping("/detailsAdd")
118
+    public ResultView detailsAdd(@RequestBody String parameter) {
119
+		processAuditService.detailsAdd(parameter);
120
+        return ResultView.success();
121
+    }
122
+}

+ 80 - 49
src/main/java/com/unissoft/ventilation/service/impl/ProcessAuditServiceImpl.java

@@ -2,12 +2,10 @@ package com.unissoft.ventilation.service.impl;
2 2
 
3 3
 import com.unissoft.model.BasicsWarehouse;
4 4
 import com.unissoft.model.ProcessAudit;
5
-import com.unissoft.model.ProcessBasis;
6 5
 import com.unissoft.model.ProcessMain;
7 6
 import com.unissoft.model.ProcessSub;
8 7
 import com.unissoft.model.SysUserPO;
9 8
 import com.unissoft.result.PageParam;
10
-import com.unissoft.result.ResultView;
11 9
 import com.unissoft.utils.UserUtils;
12 10
 import com.unissoft.MyConstant;
13 11
 import com.unissoft.feign.SystemFeign;
@@ -15,6 +13,7 @@ import com.unissoft.mapper.ProcessAuditMapper;
15 13
 import com.unissoft.mapper.ProcessMainMapper;
16 14
 import com.unissoft.mapper.ProcessSubMapper;
17 15
 import com.unissoft.ventilation.service.ProcessAuditService;
16
+import com.alibaba.fastjson.JSONArray;
18 17
 import com.alibaba.fastjson.JSONObject;
19 18
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
20 19
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -22,9 +21,7 @@ import com.github.pagehelper.PageHelper;
22 21
 import com.github.pagehelper.PageInfo;
23 22
 import com.google.common.collect.Maps;
24 23
 
25
-import java.text.SimpleDateFormat;
26 24
 import java.util.ArrayList;
27
-import java.util.Date;
28 25
 import java.util.HashMap;
29 26
 import java.util.List;
30 27
 import java.util.Map;
@@ -65,31 +62,42 @@ public class ProcessAuditServiceImpl extends ServiceImpl<ProcessAuditMapper, Pro
65 62
 		JSONObject jsStr = JSONObject.parseObject(parameter);
66 63
 		String type = jsStr.getString("type");//流程类型
67 64
 		Integer mainId = jsStr.getInteger("main_id");//主流程id
68
-		Integer subId = jsStr.getInteger("sub_id");//子流程id
69
-		Integer subData = jsStr.getInteger("sub_data");//子流程数据
70
-		String operationTime = jsStr.getString("operation_time");//子流程的操作时间
71 65
 		Integer houseId = jsStr.getInteger("house_id");//仓房id
72 66
 		Integer depotId = jsStr.getInteger("depot_id");//库id
73 67
 		Integer applyPeople = jsStr.getInteger("apply_people");//申请人id
74 68
 		Integer fromPeople = jsStr.getInteger("from_people");//提交人id
75
-		Integer toPeople = jsStr.getInteger("to_people");//申请人id
76
-		 
69
+		Integer toPeople = jsStr.getInteger("to_people");//审批人id
70
+
71
+		JSONArray jsonArray = jsStr.getJSONArray("subList");//子流程数据
72
+		JSONObject row = null;
73
+		for (int i = 0; i < jsonArray.size(); i++) {
74
+			row = jsonArray.getJSONObject(i); 
75
+			Integer subId = (Integer) row.get("sub_id");//子流程id
76
+			Integer subData = (Integer) row.get("sub_data");//子流程数据
77
+			String operationTime = (String) row.get("operation_time");//子流程的操作时间
78
+			
79
+			ProcessAudit processAudit = new ProcessAudit();
80
+			processAudit.setType(type);
81
+			processAudit.setMainId(mainId);
82
+			processAudit.setSubId(subId);
83
+			processAudit.setSubData(subData);
84
+			processAudit.setOperationTime(operationTime);
85
+			processAudit.setHouseId(houseId);
86
+			processAudit.setDepotId(depotId);
87
+			processAudit.setApplyPeople(applyPeople);
88
+			processAudit.setFromPeople(fromPeople);
89
+			processAudit.setToPeople(toPeople);
90
+			processAudit.setAuditState(0);//已提交
91
+			if(i==0){
92
+				processAudit.setResult(1);//第一条数据 保存并审批  1是0否
93
+				processAudit.setProcessId(UUID.randomUUID().toString());//唯一的流程标识
94
+			}else{
95
+				processAudit.setResult(0);// 保存并审批  1是0否
96
+				processAudit.setProcessId((String)jsonArray.getJSONObject(0).get("process_id")); //多条数据时,流程标识取第一条的
97
+			}
98
+			processAuditMapper.insert(processAudit);
99
+		}
77 100
 		
78
-		ProcessAudit processAudit = new ProcessAudit();
79
-		processAudit.setType(type);
80
-		processAudit.setMainId(mainId);
81
-		processAudit.setSubId(subId);
82
-		processAudit.setSubData(subData);
83
-		processAudit.setOperationTime(operationTime);
84
-		processAudit.setHouseId(houseId);
85
-		processAudit.setDepotId(depotId);
86
-		processAudit.setFromPeople(fromPeople);
87
-		processAudit.setApplyPeople(applyPeople);
88
-		processAudit.setToPeople(toPeople);
89
-		processAudit.setResult(1);//第一条数据 保存并审批
90
-		processAudit.setAuditState(0);//已提交状态
91
-		processAudit.setProcessId(UUID.randomUUID().toString());//唯一的流程标识
92
-		processAuditMapper.insert(processAudit);
93 101
 		
94 102
 	}
95 103
 	
@@ -190,17 +198,20 @@ public class ProcessAuditServiceImpl extends ServiceImpl<ProcessAuditMapper, Pro
190 198
         
191 199
         for (ProcessAudit processAudit : list) {
192 200
         	//根据仓房id获取仓房名称
193
-        	ResultView resultView = systemFeign.getById(processAudit.getHouseId());
194
-        	BasicsWarehouse ware = (BasicsWarehouse) resultView.getData();
201
+        	BasicsWarehouse ware = systemFeign.getById(processAudit.getHouseId());
202
+        	if(null != ware){
203
+        		processAudit.setHouseName(ware.gethName());
204
+        	}
205
+        	//BasicsWarehouse ware = (BasicsWarehouse) resultView.getData();
195 206
         	//全局获取当前登录人的信息
196 207
         	SysUserPO currUserInfo = UserUtils.getCurrUserInfo();
197 208
         	//赋值
198
-        	processAudit.setApplyName(currUserInfo.getuName());
199
-        	processAudit.setCompanyName(currUserInfo.getCompanyName());
200
-        	processAudit.setDepartmentName(currUserInfo.getDepartmentName());
201
-        	if(null != ware){
202
-        		processAudit.setHouseName(ware.gethName());
209
+        	if(null != currUserInfo){
210
+        		processAudit.setApplyName(currUserInfo.getuName());
211
+            	processAudit.setCompanyName(currUserInfo.getCompanyName());
212
+            	processAudit.setDepartmentName(currUserInfo.getDepartmentName());
203 213
         	}
214
+        	
204 215
 		}
205 216
         if (pageIndex != MyConstant.ZERO && pageSize != MyConstant.ZERO) {
206 217
             PageHelper.startPage(pageIndex, pageSize);
@@ -262,30 +273,50 @@ public class ProcessAuditServiceImpl extends ServiceImpl<ProcessAuditMapper, Pro
262 273
 	public void detailsAdd(String parameter) {
263 274
 		// TODO Auto-generated method stub
264 275
 		JSONObject jsStr = JSONObject.parseObject(parameter);
276
+		String processId = jsStr.getString("process_id");//流程id 每一条明细都是和第一条保存提交的流程id一样
265 277
 		String type = jsStr.getString("type");//流程类型
266 278
 		Integer mainId = jsStr.getInteger("main_id");//主流程id
267
-		Integer subId = jsStr.getInteger("sub_id");//子流程id
268
-		Integer subData = jsStr.getInteger("sub_data");//子流程数据
269
-		String operationTime = jsStr.getString("operation_time");//子流程的操作时间
270 279
 		Integer houseId = jsStr.getInteger("house_id");//仓房id
271 280
 		Integer depotId = jsStr.getInteger("depot_id");//库id
272 281
 		Integer applyPeople = jsStr.getInteger("apply_people");//申请人id
273 282
 		Integer auditState = jsStr.getInteger("audit_state");//审批状态
274
-		
275
-		 
276
-		
277
-		ProcessAudit processAudit = new ProcessAudit();
278
-		processAudit.setType(type);
279
-		processAudit.setMainId(mainId);
280
-		processAudit.setSubId(subId);
281
-		processAudit.setSubData(subData);
282
-		processAudit.setOperationTime(operationTime);
283
-		processAudit.setHouseId(houseId);
284
-		processAudit.setDepotId(depotId);
285
-		processAudit.setApplyPeople(applyPeople);
286
-		processAudit.setResult(0);//第一条数据 保存并审批  1是0否
287
-		processAudit.setAuditState(auditState);
288
-		processAuditMapper.insert(processAudit);
283
+		JSONArray jsonArray = jsStr.getJSONArray("subList");//子流程数据
284
+		JSONObject row = null;
285
+		for (int i = 0; i < jsonArray.size(); i++) {
286
+			row = jsonArray.getJSONObject(i);
287
+			Integer subId = (Integer) row.get("sub_id");//子流程id
288
+			Integer subData = (Integer) row.get("sub_data");//子流程数据
289
+			String operationTime = (String) row.get("operation_time");//子流程的操作时间
290
+			if(null != row.get("id")){
291
+				//修改
292
+				Integer id = (Integer) row.get("id");//子流程id
293
+				  //根据id去查询该条数据
294
+				ProcessAudit processAudit = processAuditMapper.selectById(id);
295
+				if(processAudit.getSubData().equals(subData) && processAudit.getOperationTime().equals(operationTime)){
296
+					//不做操作
297
+				}else{
298
+					processAudit.setSubData(subData);
299
+					processAudit.setOperationTime(operationTime);
300
+					processAuditMapper.updateById(processAudit);
301
+				}
302
+			}else{
303
+				//新增
304
+				ProcessAudit processAudit = new ProcessAudit();
305
+				processAudit.setType(type);
306
+				processAudit.setMainId(mainId);
307
+				processAudit.setSubId(subId);
308
+				processAudit.setSubData(subData);
309
+				processAudit.setOperationTime(operationTime);
310
+				processAudit.setHouseId(houseId);
311
+				processAudit.setDepotId(depotId);
312
+				processAudit.setApplyPeople(applyPeople);
313
+				processAudit.setResult(0);//第一条数据 保存并审批  1是0否
314
+				processAudit.setProcessId(processId);
315
+				processAudit.setAuditState(auditState);
316
+				processAuditMapper.insert(processAudit);
317
+			}
318
+			
319
+		}
289 320
 	}
290 321
 
291 322
 }