Pārlūkot izejas kodu

多个人员绑定单个设备接口

yanliming 5 gadi atpakaļ
vecāks
revīzija
3d50480c49

+ 55 - 0
web/src/main/java/com/jpsoft/smart/modules/base/controller/PersonDeviceRelationController.java

@@ -134,6 +134,61 @@ public class PersonDeviceRelationController {
         return msgResult;
     }
 
+
+
+    @ApiOperation(value="多个人员与设备批量绑定")
+    @PostMapping("batchBindPerson")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "persons",value = "人员ID(多个人员)", required = true,paramType = "query"),
+            @ApiImplicitParam(name = "deviceId",value = "设备ID", required = true, paramType = "query")
+    })
+    public MessageResult<Integer> batchBindPerson(String persons,String deviceId,@RequestAttribute String subject){
+        MessageResult<Integer> msgResult = new MessageResult<>();
+        int affectCount = 0;
+
+        try {
+            if(StringUtil.isNotEmpty(persons)){
+
+                String[] personArray = persons.split(",");
+
+                for (String strPersonId:personArray) {
+
+                    long personId = Long.parseLong(strPersonId);
+
+                    PersonDeviceRelation item = personDeviceRelationService.findByDeviceIdAndPersonId(deviceId,personId);
+
+                    if(item == null) {
+                        item = new PersonDeviceRelation();
+                        item.setId(UUID.randomUUID().toString());
+                        item.setDeviceId(deviceId);
+                        item.setPersonId(personId);
+                        item.setDelFlag(false);
+                        item.setCreateBy(subject);
+                        item.setCreateTime(new Date());
+
+                        affectCount += personDeviceRelationService.insert(item);
+                    }
+                }
+            }
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(affectCount);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库添加失败");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
     @ApiOperation(value="获取人员和设备绑定信息")
     @GetMapping("edit/{id}")
     public MessageResult<PersonDeviceRelation> edit(@PathVariable("id") String id){