Explorar o código

排除绑定会重复绑定的问题

yanliming %!s(int64=5) %!d(string=hai) anos
pai
achega
b94752684e

+ 13 - 6
web/src/main/java/com/jpsoft/smart/modules/base/controller/PersonDeviceRelationController.java

@@ -51,12 +51,19 @@ public class PersonDeviceRelationController {
         MessageResult<PersonDeviceRelation> msgResult = new MessageResult<>();
 
         try {
-            personDeviceRelation.setId(UUID.randomUUID().toString());
-            personDeviceRelation.setDelFlag(false);
-            personDeviceRelation.setCreateBy(subject);
-            personDeviceRelation.setCreateTime(new Date());
-            
-            int affectCount = personDeviceRelationService.insert(personDeviceRelation);
+            int affectCount = 0;
+
+            PersonDeviceRelation item = personDeviceRelationService.findByDeviceIdAndPersonId(personDeviceRelation.getDeviceId(),personDeviceRelation.getPersonId());
+
+            if(item == null) {
+
+                personDeviceRelation.setId(UUID.randomUUID().toString());
+                personDeviceRelation.setDelFlag(false);
+                personDeviceRelation.setCreateBy(subject);
+                personDeviceRelation.setCreateTime(new Date());
+
+                affectCount = personDeviceRelationService.insert(personDeviceRelation);
+            }
 
             if (affectCount > 0) {
                 msgResult.setResult(true);