Selaa lähdekoodia

Merge branch 'V1' of http://223.75.76.159:9090/xiao547607/smart-community-server

M墨鱼—_mo 5 vuotta sitten
vanhempi
commit
f1de202701

+ 1 - 0
common/src/main/java/com/jpsoft/smart/modules/base/service/PersonDeviceRelationService.java

@@ -13,6 +13,7 @@ public interface PersonDeviceRelationService {
 	boolean exist(String id);
 	int insert(PersonDeviceRelation model);
 	int update(PersonDeviceRelation model);
+	int updateDevicePerson(PersonDeviceRelation model) throws Exception;
 	int delete(String id);
 	List<PersonDeviceRelation> list();
 	List<PersonDeviceRelation> findByPersonId(Long personId);

+ 22 - 0
common/src/main/java/com/jpsoft/smart/modules/base/service/impl/PersonDeviceRelationServiceImpl.java

@@ -6,6 +6,9 @@ import java.util.UUID;
 import javax.annotation.Resource;
 
 import com.jpsoft.smart.modules.base.entity.DeviceInfo;
+import com.jpsoft.smart.modules.lapi.service.ILapiService;
+import com.jpsoft.smart.modules.lapi.vo.LapiMsgResult;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 import com.jpsoft.smart.modules.base.dao.PersonDeviceRelationDAO;
@@ -21,6 +24,9 @@ public class PersonDeviceRelationServiceImpl implements PersonDeviceRelationServ
 	@Resource(name="personDeviceRelationDAO")
 	private PersonDeviceRelationDAO personDeviceRelationDAO;
 
+	@Autowired
+	private ILapiService lapiService;
+
 	@Override
 	public PersonDeviceRelation get(String id) {
 		// TODO Auto-generated method stub
@@ -41,6 +47,22 @@ public class PersonDeviceRelationServiceImpl implements PersonDeviceRelationServ
 		return personDeviceRelationDAO.update(model);
 	}
 
+	@Override
+	public int updateDevicePerson(PersonDeviceRelation model) throws Exception {
+
+		List<LapiMsgResult> lapiMsgResultList = lapiService.deleteDevicePerson(model.getPersonId(),model.getDeviceId());
+
+		int affectCount = 0;
+
+		if(lapiMsgResultList.size()>0){
+			LapiMsgResult lapiMsgResult = lapiMsgResultList.get(0);
+			if(lapiMsgResult.isSuccess()){
+				affectCount = personDeviceRelationDAO.update(model);
+			}
+		}
+		return affectCount;
+	}
+
 	@Override
 	public int delete(String id) {
 		// TODO Auto-generated method stub

+ 9 - 4
web/src/main/java/com/jpsoft/smart/modules/base/controller/PersonDeviceRelationController.java

@@ -7,6 +7,8 @@ import com.jpsoft.smart.modules.base.service.DeviceInfoService;
 import com.jpsoft.smart.modules.common.utils.PojoUtils;
 import com.jpsoft.smart.modules.common.dto.Sort;
 import com.jpsoft.smart.modules.common.dto.MessageResult;
+import com.jpsoft.smart.modules.lapi.service.ILapiService;
+import com.jpsoft.smart.modules.lapi.vo.LapiMsgResult;
 import com.jpsoft.smart.modules.sys.entity.User;
 import com.jpsoft.smart.modules.base.entity.PersonDeviceRelation;
 import com.jpsoft.smart.modules.base.service.PersonDeviceRelationService;
@@ -20,6 +22,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
@@ -44,6 +47,9 @@ public class PersonDeviceRelationController {
     @Autowired
     private DataDictionaryService dataDictionaryService;
 
+    @Autowired
+    private ILapiService lapiService;
+
     
     @ApiOperation(value="添加设备和人员绑定")
     @PostMapping("add")
@@ -255,19 +261,18 @@ public class PersonDeviceRelationController {
             personDeviceRelation.setUpdateBy(subject);
             personDeviceRelation.setUpdateTime(new Date());
 
-            int affectCount = personDeviceRelationService.update(personDeviceRelation);
+            int affectCount = personDeviceRelationService.updateDevicePerson(personDeviceRelation);
 
             if (affectCount > 0) {
                 msgResult.setResult(true);
                 msgResult.setData(affectCount);
             } else {
                 msgResult.setResult(false);
-                msgResult.setMessage("删除失败");
+                msgResult.setMessage("数据库更新失败");
             }
         }
         catch(Exception ex){
             logger.error(ex.getMessage(),ex);
-
             msgResult.setResult(false);
             msgResult.setMessage(ex.getMessage());
         }
@@ -290,7 +295,7 @@ public class PersonDeviceRelationController {
                 personDeviceRelation.setUpdateBy(subject);
                 personDeviceRelation.setUpdateTime(new Date());
 
-                affectCount += personDeviceRelationService.update(personDeviceRelation);
+                affectCount = personDeviceRelationService.updateDevicePerson(personDeviceRelation);
             }
 
             if (affectCount > 0) {