瀏覽代碼

1. 去掉设备房屋关系表。 设备表中增加房屋ID
2. 增加频安宝接口

lilt085163@126.com 3 年之前
父節點
當前提交
d14162e736
共有 26 個文件被更改,包括 519 次插入611 次删除
  1. 1 3
      src/main/java/com/care/bms/mqtt/MqttInit.java
  2. 6 19
      src/main/java/com/care/bms/mqtt/MqttMessageListener.java
  3. 1 4
      src/main/java/com/care/bms/mqtt/MqttTool.java
  4. 13 97
      src/main/java/com/care/bms/service/BmsEventOrderService.java
  5. 24 167
      src/main/java/com/care/client/controller/ContactApiController.java
  6. 16 161
      src/main/java/com/care/client/controller/EventApiController.java
  7. 21 17
      src/main/java/com/care/client/controller/HouseApiController.java
  8. 111 19
      src/main/java/com/care/client/service/PinanbaoService.java
  9. 15 6
      src/main/java/com/care/common/entity/CareDevice.java
  10. 18 3
      src/main/java/com/care/common/entity/CareEventOrder.java
  11. 0 49
      src/main/java/com/care/common/entity/CareHouseDeviceRel.java
  12. 53 0
      src/main/java/com/care/common/enums/LogTypeEnum.java
  13. 5 2
      src/main/java/com/care/common/enums/RelationTypeEnum.java
  14. 0 15
      src/main/java/com/care/common/mapper/CareHouseDeviceRelMapper.java
  15. 2 0
      src/main/java/com/care/common/service/CareEventOrderService.java
  16. 0 14
      src/main/java/com/care/common/service/CareHouseDeviceRelService.java
  17. 21 0
      src/main/java/com/care/common/service/FileUploadService.java
  18. 145 2
      src/main/java/com/care/common/service/impl/CareEventOrderServiceImpl.java
  19. 0 18
      src/main/java/com/care/common/service/impl/CareHouseDeviceRelServiceImpl.java
  20. 57 0
      src/main/java/com/care/common/service/impl/FileUploadServiceImpl.java
  21. 1 1
      src/main/java/com/care/common/vo/device/DeviceVO.java
  22. 2 0
      src/main/resources/application-dev.properties
  23. 1 1
      src/main/resources/application.properties
  24. 4 4
      src/main/resources/mybatis/BigSreenMapper.xml
  25. 2 3
      src/main/resources/mybatis/CareDeviceMapper.xml
  26. 0 6
      src/main/resources/mybatis/CareHouseDeviceRelMapper.xml

+ 1 - 3
src/main/java/com/care/bms/mqtt/MqttInit.java

@@ -26,8 +26,6 @@ public class MqttInit implements CommandLineRunner {
     @Autowired
     @Autowired
     private CareEventOrderService careEventOrderService;
     private CareEventOrderService careEventOrderService;
     @Autowired
     @Autowired
-    private CareHouseDeviceRelService careHouseDeviceRelService;
-    @Autowired
     private CareHouseService careHouseService;
     private CareHouseService careHouseService;
     @Autowired
     @Autowired
     private CareOrganizationService careOrganizationService;
     private CareOrganizationService careOrganizationService;
@@ -37,7 +35,7 @@ public class MqttInit implements CommandLineRunner {
     @Override
     @Override
     public void run(String... args) throws Exception {
     public void run(String... args) throws Exception {
         logger.info("初始化MQTTstart ...........................");
         logger.info("初始化MQTTstart ...........................");
-        MqttTool.init(careDeviceService,bmsEventOrderService,careEventOrderService,careHouseDeviceRelService,careHouseService,careOrganizationService,careStationService);
+        MqttTool.init(careDeviceService,bmsEventOrderService,careEventOrderService,careHouseService,careOrganizationService,careStationService);
         logger.info("初始化MQTTend ...........................");
         logger.info("初始化MQTTend ...........................");
     }
     }
 
 

+ 6 - 19
src/main/java/com/care/bms/mqtt/MqttMessageListener.java

@@ -12,7 +12,7 @@ import com.care.bms.service.BmsEventOrderService;
 import com.care.common.entity.CareDevice;
 import com.care.common.entity.CareDevice;
 import com.care.common.entity.CareEventOrder;
 import com.care.common.entity.CareEventOrder;
 import com.care.common.entity.CareHouse;
 import com.care.common.entity.CareHouse;
-import com.care.common.entity.CareHouseDeviceRel;
+import com.care.common.enums.OrderStatusEnum;
 import com.care.common.enums.OrderTypeEnum;
 import com.care.common.enums.OrderTypeEnum;
 import com.care.common.service.*;
 import com.care.common.service.*;
 import org.eclipse.paho.client.mqttv3.IMqttMessageListener;
 import org.eclipse.paho.client.mqttv3.IMqttMessageListener;
@@ -26,7 +26,6 @@ public class MqttMessageListener implements IMqttMessageListener {
     private CareDeviceService careDeviceService;
     private CareDeviceService careDeviceService;
     private BmsEventOrderService bmsEventOrderService;
     private BmsEventOrderService bmsEventOrderService;
     private CareEventOrderService careEventOrderService;
     private CareEventOrderService careEventOrderService;
-    private CareHouseDeviceRelService careHouseDeviceRelService;
     private CareHouseService careHouseService;
     private CareHouseService careHouseService;
     private CareOrganizationService careOrganizationService;
     private CareOrganizationService careOrganizationService;
     private CareStationService careStationService;
     private CareStationService careStationService;
@@ -48,14 +47,6 @@ public class MqttMessageListener implements IMqttMessageListener {
         this.careStationService = careStationService;
         this.careStationService = careStationService;
     }
     }
 
 
-    public CareHouseDeviceRelService getCareHouseDeviceRelService() {
-        return careHouseDeviceRelService;
-    }
-
-    public void setCareHouseDeviceRelService(CareHouseDeviceRelService careHouseDeviceRelService) {
-        this.careHouseDeviceRelService = careHouseDeviceRelService;
-    }
-
     public CareHouseService getCareHouseService() {
     public CareHouseService getCareHouseService() {
         return careHouseService;
         return careHouseService;
     }
     }
@@ -138,11 +129,8 @@ public class MqttMessageListener implements IMqttMessageListener {
     }
     }
 
 
     private void saveOrder(CareDevice careDevice,String orderType ){
     private void saveOrder(CareDevice careDevice,String orderType ){
-        QueryWrapper<CareHouseDeviceRel> queryWrapperCareHouseDeviceRel = new QueryWrapper<>();
-        queryWrapperCareHouseDeviceRel.lambda().eq(CareHouseDeviceRel::getDevId,careDevice.getId());
-        CareHouseDeviceRel careHouseDeviceRel = careHouseDeviceRelService.getOne(queryWrapperCareHouseDeviceRel);
 
 
-        CareHouse careHouse = careHouseService.getById(careHouseDeviceRel.getHouseId());
+        CareHouse careHouse = careHouseService.getById(careDevice.getHouseId());
 
 
         CareEventOrder order = new CareEventOrder();
         CareEventOrder order = new CareEventOrder();
         order.setOrgId(careHouse.getOrgId());
         order.setOrgId(careHouse.getOrgId());
@@ -150,16 +138,15 @@ public class MqttMessageListener implements IMqttMessageListener {
         order.setStationId(careHouse.getStationId());
         order.setStationId(careHouse.getStationId());
         order.setStationName(careStationService.getById(careHouse.getStationId()).getName());
         order.setStationName(careStationService.getById(careHouse.getStationId()).getName());
         order.setHouseId(careHouse.getId());
         order.setHouseId(careHouse.getId());
+        order.setDevId(careDevice.getId());
+        order.setDevName(careDevice.getDevName());
         order.setHouseName(careHouse.getName());
         order.setHouseName(careHouse.getName());
         order.setTitle(careHouse.getAddr());
         order.setTitle(careHouse.getAddr());
         order.setOrderType(orderType);
         order.setOrderType(orderType);
-        order.setStatus("0");
+        order.setStatus(OrderStatusEnum.TODO.getValue());
         order.setCreateTime(DateUtil.date());
         order.setCreateTime(DateUtil.date());
         order.setModifyTime(DateUtil.date());
         order.setModifyTime(DateUtil.date());
-        careEventOrderService.save(order);
-        bmsEventOrderService.addOlderToOrderOlder(order);
-        bmsEventOrderService.addChamberlainToOrder(order);
-        bmsEventOrderService.addContactToOrderContact(order);
+        careEventOrderService.saveOrder(order);
     }
     }
 
 
 }
 }

+ 1 - 4
src/main/java/com/care/bms/mqtt/MqttTool.java

@@ -15,7 +15,6 @@ public class MqttTool {
     public static void init(CareDeviceService careDeviceService,
     public static void init(CareDeviceService careDeviceService,
                             BmsEventOrderService bmsEventOrderService,
                             BmsEventOrderService bmsEventOrderService,
                             CareEventOrderService careEventOrderService,
                             CareEventOrderService careEventOrderService,
-                            CareHouseDeviceRelService careHouseDeviceRelService,
                             CareHouseService careHouseService,
                             CareHouseService careHouseService,
                             CareOrganizationService careOrganizationService,
                             CareOrganizationService careOrganizationService,
                             CareStationService careStationService) {
                             CareStationService careStationService) {
@@ -41,7 +40,6 @@ public class MqttTool {
                 mqttMessageListener.setCareDeviceService(careDeviceService);
                 mqttMessageListener.setCareDeviceService(careDeviceService);
                 mqttMessageListener.setBmsEventOrderService(bmsEventOrderService);
                 mqttMessageListener.setBmsEventOrderService(bmsEventOrderService);
                 mqttMessageListener.setCareEventOrderService(careEventOrderService);
                 mqttMessageListener.setCareEventOrderService(careEventOrderService);
-                mqttMessageListener.setCareHouseDeviceRelService(careHouseDeviceRelService);
                 mqttMessageListener.setCareHouseService(careHouseService);
                 mqttMessageListener.setCareHouseService(careHouseService);
                 mqttMessageListener.setCareOrganizationService(careOrganizationService);
                 mqttMessageListener.setCareOrganizationService(careOrganizationService);
                 mqttMessageListener.setCareStationService(careStationService);
                 mqttMessageListener.setCareStationService(careStationService);
@@ -67,7 +65,6 @@ public class MqttTool {
     public static void reInit(CareDeviceService careDeviceService,
     public static void reInit(CareDeviceService careDeviceService,
                               BmsEventOrderService bmsEventOrderService,
                               BmsEventOrderService bmsEventOrderService,
                               CareEventOrderService careEventOrderService,
                               CareEventOrderService careEventOrderService,
-                              CareHouseDeviceRelService careHouseDeviceRelService,
                               CareHouseService careHouseService,
                               CareHouseService careHouseService,
                               CareOrganizationService careOrganizationService,
                               CareOrganizationService careOrganizationService,
                               CareStationService careStationService) {
                               CareStationService careStationService) {
@@ -75,7 +72,7 @@ public class MqttTool {
             value.destroy();
             value.destroy();
             mqttDataConnectorMap.remove(key);
             mqttDataConnectorMap.remove(key);
         });
         });
-        init(careDeviceService,bmsEventOrderService,careEventOrderService,careHouseDeviceRelService,careHouseService,careOrganizationService,careStationService);
+        init(careDeviceService,bmsEventOrderService,careEventOrderService,careHouseService,careOrganizationService,careStationService);
     }
     }
 
 
 }
 }

+ 13 - 97
src/main/java/com/care/bms/service/BmsEventOrderService.java

@@ -40,10 +40,7 @@ import java.util.List;
 public class BmsEventOrderService {
 public class BmsEventOrderService {
     @Resource
     @Resource
     RedisUtil redisUtil;
     RedisUtil redisUtil;
-    @Resource
-    private CareHouseContactService careHouseContactService;
-    @Resource
-    private CareOlderService careOlderService;
+
     @Resource
     @Resource
     private CareEventOrderService careEventOrderService;
     private CareEventOrderService careEventOrderService;
     @Resource
     @Resource
@@ -62,7 +59,10 @@ public class BmsEventOrderService {
     private CcCallResultService ccCallResultService;
     private CcCallResultService ccCallResultService;
     @Resource
     @Resource
     private CareHouseService careHouseService;
     private CareHouseService careHouseService;
-
+    @Resource
+    private CareHouseContactService careHouseContactService;
+    @Resource
+    private CareOlderService careOlderService;
     @Resource
     @Resource
     private SmsSendService smsSendService;
     private SmsSendService smsSendService;
 
 
@@ -316,10 +316,10 @@ public class BmsEventOrderService {
         his.setOrgId(apply.getOrgId());
         his.setOrgId(apply.getOrgId());
         his.setStationId(apply.getStationId());
         his.setStationId(apply.getStationId());
         his.setOrderId(apply.getOrderId());
         his.setOrderId(apply.getOrderId());
-       // his.setLogType();
+        his.setLogType(LogTypeEnum.KEY.getValue());
         his.setLogObjectId(apply.getApplyUserId());
         his.setLogObjectId(apply.getApplyUserId());
         his.setLogObjectName(apply.getApplyUserName());
         his.setLogObjectName(apply.getApplyUserName());
-        his.setLogResult("钥匙授权");
+        his.setLogResult("获得钥匙");
         his.setOpUserRole(UserRoleEnum.SEAT.getValue());
         his.setOpUserRole(UserRoleEnum.SEAT.getValue());
         his.setOpUserId(loginUser.getId());
         his.setOpUserId(loginUser.getId());
         his.setOpUserName(loginUser.getName());
         his.setOpUserName(loginUser.getName());
@@ -345,7 +345,7 @@ public class BmsEventOrderService {
         his.setOrgId(contact.getOrgId());
         his.setOrgId(contact.getOrgId());
         his.setStationId(contact.getStationId());
         his.setStationId(contact.getStationId());
         his.setOrderId(contact.getOrderId());
         his.setOrderId(contact.getOrderId());
-       // his.setLogType();
+        his.setLogType(LogTypeEnum.OUT_CALL.getValue());
         his.setLogObjectId(contact.getContactId());
         his.setLogObjectId(contact.getContactId());
         his.setLogObjectName(contact.getContactName());
         his.setLogObjectName(contact.getContactName());
         his.setLogResult(ContactorStatusEnum.getCodeToName(status));
         his.setLogResult(ContactorStatusEnum.getCodeToName(status));
@@ -384,101 +384,17 @@ public class BmsEventOrderService {
         order.setStationId(1L);
         order.setStationId(1L);
         order.setStationName("站点1");
         order.setStationName("站点1");
         order.setHouseId(1L);
         order.setHouseId(1L);
+        order.setDevId(1L);
+        order.setDevName("卧室");
         order.setHouseName(house.getName());
         order.setHouseName(house.getName());
         order.setTitle(house.getAddr());
         order.setTitle(house.getAddr());
         order.setOrderType(OrderTypeEnum.values()[RandomUtil.randomInt(0,4)].getValue());
         order.setOrderType(OrderTypeEnum.values()[RandomUtil.randomInt(0,4)].getValue());
         order.setStatus("0");
         order.setStatus("0");
         order.setCreateTime(DateUtil.date());
         order.setCreateTime(DateUtil.date());
         order.setModifyTime(DateUtil.date());
         order.setModifyTime(DateUtil.date());
-        this.careEventOrderService.save(order);
-        addOlderToOrderOlder(order);
-        addChamberlainToOrder(order);
-        addContactToOrderContact(order);
-    }
-    /**
-     * 将老人加入到 工单中
-     * @param order
-     */
-    public void addOlderToOrderOlder(CareEventOrder order){
-       QueryWrapper<CareOlder> queryWrapper = new QueryWrapper<>();
-       queryWrapper.lambda().eq(CareOlder::getHouseId,order.getHouseId());
-       List<CareOlder> olders = this.careOlderService.list(queryWrapper);
-       if (CollUtil.isNotEmpty(olders)){
-           List<CareEventOrderOlder>  ceoos = Lists.newArrayList();
-           olders.forEach(item -> {
-               CareEventOrderOlder ceoo = new CareEventOrderOlder();
-               BeanUtil.copyProperties(item,ceoo);
-               ceoo.setOrderId(order.getId());
-               ceoo.setOlderId(item.getId());
-               if (order.getOlderId() == item.getId()){
-                   //主动呼叫
-                    ceoo.setIsZhudong(1);
-               }else{
-                   ceoo.setIsZhudong(0);
-               }
-               ceoo.setStatus(OrderOlderStatusEnum.WEI_LIAN_XI.getValue());
-               ceoo.setCreateTime(DateUtil.date());
-               ceoos.add(ceoo);
-           });
-           this.careEventOrderOlderService.saveBatch(ceoos);
-       }
-    }
-
-    /**
-     * 将管家加入到联系人当中
-     * @param order
-     */
-    public void addChamberlainToOrder(CareEventOrder order){
-        CareHouse house = this.careHouseService.getById(order.getHouseId());
-        if (house != null){
-            CareSysUser user = this.careSysUserService.getById(house.getChambId());
-            if (user != null){
-                CareEventOrderChamb chamb = new CareEventOrderChamb();
-                chamb.setOrgId(user.getOrgId());
-                chamb.setStationId(user.getStationId());
-                chamb.setOrderId(order.getId());
-                chamb.setChambId(user.getId());
-                chamb.setChambName(user.getName());
-                chamb.setPhone(user.getPhone());
-                chamb.setStatus(0);
-                chamb.setHouseId(house.getId());
-                chamb.setStatus(0);
-                chamb.setCreateTime(DateUtil.date());
-                chamb.setModifyTime(DateUtil.date());
-                this.careEventOrderChambService.save(chamb);
-            }
-        }
+        this.careEventOrderService.saveOrder(order);
     }
     }
 
 
-    /**
-     * 将紧急联系人加入到联系人当中
-     * @param order
-     */
-    public void addContactToOrderContact(CareEventOrder order){
-        List<CareHouseContact> cons = this.careHouseContactService.queryContactByHouseId(order.getHouseId());
-        if (CollUtil.isNotEmpty(cons)){
-            List<CareEventOrderContactStatus> orderContactList = Lists.newArrayList();
-            cons.forEach(item ->{
-                CareEventOrderContactStatus orderContactStatus = new CareEventOrderContactStatus();
-                orderContactStatus.setOrgId(order.getOrgId());
-                orderContactStatus.setStationId(order.getStationId());
-                orderContactStatus.setOrderId(order.getId());
-                orderContactStatus.setContactRole(UserRoleEnum.CONTACT.getValue());
-                orderContactStatus.setContactId(item.getId());
-                orderContactStatus.setStatus(ContactorStatusEnum.WEI_LIAN_XI.getValue());
-                orderContactStatus.setContactName(item.getName());
-                orderContactStatus.setContactPhone(item.getPhone());
-                orderContactStatus.setLongitude(item.getLongitude());
-                orderContactStatus.setLatitude(item.getLatitude());
-                orderContactStatus.setRelationTypeDesc(RelationTypeEnum.getCodeToName(item.getRelationType()));
-                orderContactStatus.setContactLevel(item.getContactLevel());
-                orderContactStatus.setCreateTime(DateUtil.date());
-                orderContactStatus.setModifyTime(DateUtil.date());
-                orderContactList.add(orderContactStatus);
-            });
-            this.careEventOrderContactStatusService.saveBatch(orderContactList);
-        }
-    }
 
 
     /**
     /**
      * 发送短信接口
      * 发送短信接口
@@ -491,10 +407,10 @@ public class BmsEventOrderService {
         his.setOrgId(contactStatus.getOrgId());
         his.setOrgId(contactStatus.getOrgId());
         his.setStationId(contactStatus.getStationId());
         his.setStationId(contactStatus.getStationId());
         his.setOrderId(contactStatus.getOrderId());
         his.setOrderId(contactStatus.getOrderId());
-        // his.setLogType();
+        his.setLogType(LogTypeEnum.SMS.getValue());
         his.setLogObjectId(contactStatus.getContactId());
         his.setLogObjectId(contactStatus.getContactId());
         his.setLogObjectName(contactStatus.getContactName());
         his.setLogObjectName(contactStatus.getContactName());
-        his.setLogResult("钥匙授权");
+        his.setLogResult("短信通知");
         his.setOpUserRole(UserRoleEnum.SEAT.getValue());
         his.setOpUserRole(UserRoleEnum.SEAT.getValue());
         his.setCreateTime(DateUtil.date());
         his.setCreateTime(DateUtil.date());
         his.setRelationTypeDesc(contactStatus.getRelationTypeDesc());
         his.setRelationTypeDesc(contactStatus.getRelationTypeDesc());

+ 24 - 167
src/main/java/com/care/client/controller/ContactApiController.java

@@ -1,25 +1,21 @@
 package com.care.client.controller;
 package com.care.client.controller;
 
 
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.care.bms.service.BmsEventOrderService;
+import com.care.client.service.PassportService;
+import com.care.client.service.PinanbaoService;
+import com.care.client.vo.HouseContactVO;
+import com.care.client.vo.MemberInfoVO;
 import com.care.common.annotation.Permission;
 import com.care.common.annotation.Permission;
-import com.care.common.enums.OrderStatusEnum;
 import com.care.common.exception.BDException;
 import com.care.common.exception.BDException;
-import com.care.common.util.PageResult;
 import com.care.common.util.Result;
 import com.care.common.util.Result;
-import com.care.common.util.WebPageUtils;
-import com.care.common.vo.PageReqVO;
-import com.care.common.vo.UserLogindConvertVO;
-import com.care.common.vo.event.*;
-import com.care.common.vo.outcall.CcCallResultVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestHeader;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 import java.util.List;
 import java.util.List;
 
 
@@ -29,175 +25,36 @@ import java.util.List;
  * @Desc:
  * @Desc:
  */
  */
 @RestController
 @RestController
-@Api(value = "EventHandleController", tags = { "我的紧急联系人" })
+@Api(value = "ContactApiController", tags = { "我的紧急联系人" })
 @Slf4j
 @Slf4j
 @RequestMapping("/pinanbao/contact")
 @RequestMapping("/pinanbao/contact")
 @Permission
 @Permission
 public class ContactApiController {
 public class ContactApiController {
 
 
-    @Autowired
-    private BmsEventOrderService bmsEventOrderService;
-
+    @Resource
+    private PinanbaoService pinanbaoService;
+    @Resource
+    private PassportService passportService;
 
 
     /**
     /**
-     *未处理事件查询 分页
+     * 紧急联系人列表
      * @param request
      * @param request
-     * @param pageReqVo
      * @return
      * @return
      */
      */
-    @GetMapping("/not-handle/list")
-    @ApiOperation(tags = {"未处理事件"},value = "未处理事件查询-分页")
-    public PageResult<List<EventOrderVO>> listNotHandle(HttpServletRequest request, @RequestHeader(value = "token") String token,
-                                                        PageReqVO pageReqVo){
+    @GetMapping("/my/list")
+    @ApiOperation(tags = {"我的紧急联系人"},value = "紧急联系人列表")
+    public Result<List<HouseContactVO>> myHouseContactList(HttpServletRequest request, @RequestHeader(value = "token") String token){
+        MemberInfoVO current = passportService.checkToken(token);
         try {
         try {
-            UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-            IPage<EventOrderVO> pageResponse = this.bmsEventOrderService.listEvent(OrderStatusEnum.TODO.getValue(), null,loginUser ,pageReqVo);
-            return PageResult.success(pageResponse.getRecords(),pageResponse.getCurrent(),pageResponse.getSize(),pageResponse.getTotal());
+            List<HouseContactVO> datas = pinanbaoService.queryContactByMemberId(current.getId());
+            return Result.success(datas);
         }catch (BDException e) {
         }catch (BDException e) {
-            log.error("未处理事件查询-分页列表出现异常",e);
-            return  PageResult.error(e.getMessage());
+            return  Result.error(e.getMessage());
         } catch (Exception e) {
         } catch (Exception e) {
-            log.error("事件处理: 未处理事件查询出现异常",e);
-            return PageResult.error( "获取列表失败");
-        }
-    }
-    @GetMapping("/my-handle/list")
-    @ApiOperation(tags = {"我的处理事件"},value = "我的处理事件查询 分页")
-    @ApiImplicitParams(value = {
-            @ApiImplicitParam(paramType = "header", name = "status", value = "状态"),
-            @ApiImplicitParam(paramType = "query", name = "status", value = "状态"),
-            @ApiImplicitParam(paramType = "query", name = "olderName", value = "老人姓名"),
-    })
-    public PageResult<List<EventOrderVO>> listMyHandle(HttpServletRequest request,@RequestHeader(value = "token") String token,
-                                                           @RequestParam(value = "status", required = false) String status,
-                                                           @RequestParam(value = "olderName", required = false) String olderName,
-                                                            PageReqVO pageReqVo){
-        try {
-            UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-            IPage<EventOrderVO> pageResponse = this.bmsEventOrderService.listEvent4MyDo(status, olderName,loginUser ,pageReqVo);
-            return PageResult.success(pageResponse.getRecords(),pageResponse.getCurrent(),pageResponse.getSize(),pageResponse.getTotal());
-        }catch (BDException e) {
-            log.error("我的处理事件查询-分页列表出现异常",e);
-            return  PageResult.error(e.getMessage());
-        } catch (Exception e) {
-            log.error("事件处理: 未处理事件查询出现异常",e);
-            return PageResult.error( "获取列表失败");
-        }
-    }
-
-    @GetMapping("/list")
-    @ApiOperation(tags = {"事件查询"},value = "事件查询 分页")
-    public PageResult<List<EventOrderVO>> list(HttpServletRequest request,
-                                                           @RequestParam(value = "status", required = false) String status,
-                                                           @RequestParam(value = "olderName", required = false) String olderName,
-                                                           PageReqVO pageReqVo){
-        try {
-            UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-            IPage<EventOrderVO> pageResponse = this.bmsEventOrderService.listEvent(status, olderName,loginUser ,pageReqVo);
-            return PageResult.success(pageResponse.getRecords(),pageResponse.getCurrent(),pageResponse.getSize(),pageResponse.getTotal());
-        }catch (BDException e) {
-            log.error("我的处理事件查询-分页列表出现异常",e);
-            return  PageResult.error(e.getMessage());
-        } catch (Exception e) {
-            log.error("事件处理: 未处理事件查询出现异常",e);
-            return PageResult.error( "获取列表失败");
-        }
-    }
-    @PostMapping("/receive/{orderId}")
-    @ApiOperation(tags = {"未处理事件"},value = "立即处理-领取工单")
-    public Result<Object> receiveOrder(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        this.bmsEventOrderService.receiveOrder(orderId,loginUser);
-        return  Result.success("领取工单成功!");
-    }
-    @GetMapping("/getEventInfo/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "事件详情")
-    public Result<EventOrderVO> getEventInfo(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        EventOrderVO orderInfo = this.bmsEventOrderService.getOrderInfo(orderId);
-        return  Result.success("查询成功!",orderInfo);
-    }
-
-    @GetMapping("/getOlderList/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "被监护人信息列表")
-    public Result<List<OrderOlderVO>> getOlderInfo(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        List<OrderOlderVO> older = this.bmsEventOrderService.queryOrderOlderList(orderId);
-        return  Result.success("查询成功!",older);
-    }
-
-    @GetMapping("/queryDoHis/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "事件处理历史记录")
-    public Result<List<OrderHandleHisVO>> queryDoHis(HttpServletRequest request, @RequestHeader("token") String token, @PathVariable("orderId") Long orderId){
-        return  Result.success("查询成功!",this.bmsEventOrderService.queryOrderHandleHis(orderId));
-    }
-
-    @GetMapping("/queryContactList/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "跟事件相关的联系人列表")
-    public Result<Object> queryContactList(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        return  Result.success("查询成功!",this.bmsEventOrderService.queryContactList(orderId));
-    }
-
-    @PostMapping("/complete/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "完成工单")
-    public Result<Object> complete(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        this.bmsEventOrderService.updateOrderStatus(orderId,OrderStatusEnum.COMPLETE);
-        return  Result.success("操作成功!");
-    }
-
-    @GetMapping("/keyAuth/list/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "钥匙申请列表")
-    public Result<List<OrderKeyApplyVO>> queryKeyAuthList(HttpServletRequest request, @RequestHeader("token") String token, @PathVariable("orderId") Long orderId){
-        return  Result.success("查询成功!",this.bmsEventOrderService.queryKeyAuthList(orderId));
-    }
-    @PostMapping("/key/auth/{applyId}")
-    @ApiOperation(tags = {"事件处理"},value = "钥匙授权")
-    public Result<Object> keyAuth(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("applyId") Long applyId){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        if (this.bmsEventOrderService.keyAuth(applyId,loginUser)) {
-            return  Result.success("钥匙授权成功!");
-        }else{
-            return  Result.error("钥匙授权失败!");
+            log.error("我的紧急联系人: 紧急联系人列表查询出现异常",e);
+            return Result.error( "获取失败");
         }
         }
     }
     }
-    @PostMapping("/contact/updateStatus/{orderContactId}/{status}")
-    @ApiOperation(tags = {"事件处理"},value = "更新联系人状态")
-    public Result<Object> updateOrderContactStatus(HttpServletRequest request,@RequestHeader("token") String token,
-                                                   @PathVariable("orderContactId") Long orderContactId,
-                                                   @PathVariable("status") Integer status){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        if (this.bmsEventOrderService.updateOrderContactStatus(orderContactId,status,loginUser)) {
-            return  Result.success("更新成功!");
-        }else{
-            return  Result.error("更新失败!");
-        }
-
-    }
-    @PostMapping("/sendSms")
-    @ApiOperation(tags = {"事件处理"},value = "发送短信")
-    public Result<Object> sendSms(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
 
 
-        return  Result.success("发送短信成功!");
-    }
-    @GetMapping("/getCallRadio/{hisId}")
-    @ApiOperation(tags = {"事件处理"},value = "获取通话录音")
-    public Result<Object> getCallRadio(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("hisId") Long hisId){
-        CcCallResultVO ccCallResultVO = this.bmsEventOrderService.getCallRadio(hisId);
-        if (ccCallResultVO != null) {
-            return  Result.success("获取通话录音!");
-        }else{
-            return  Result.error("通话记录不存在!");
-        }
-    }
-    @GetMapping("/stat")
-    @ApiOperation(tags = {"事件查询"},value = "查询事件统计信息")
-    public Result<Object> stat(HttpServletRequest request,@RequestHeader("token") String token){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        EventStaVO ccCallResultVO = this.bmsEventOrderService.statOrder(loginUser);
-        if (ccCallResultVO != null) {
-            return  Result.success("查询成功!");
-        }else{
-            return  Result.error("查询失败!");
-        }
-    }
 
 
 }
 }

+ 16 - 161
src/main/java/com/care/client/controller/EventApiController.java

@@ -1,7 +1,9 @@
 package com.care.client.controller;
 package com.care.client.controller;
 
 
+import com.alibaba.excel.EasyExcelFactory;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.care.bms.service.BmsEventOrderService;
 import com.care.bms.service.BmsEventOrderService;
+import com.care.client.service.PinanbaoService;
 import com.care.common.annotation.Permission;
 import com.care.common.annotation.Permission;
 import com.care.common.enums.OrderStatusEnum;
 import com.care.common.enums.OrderStatusEnum;
 import com.care.common.exception.BDException;
 import com.care.common.exception.BDException;
@@ -19,8 +21,11 @@ import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
+import java.io.BufferedInputStream;
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -29,178 +34,28 @@ import java.util.List;
  * @Desc:
  * @Desc:
  */
  */
 @RestController
 @RestController
-@Api(value = "EventHandleController", tags = { "事件处理" })
+@Api(value = "EventHandleController")
 @Slf4j
 @Slf4j
 @RequestMapping("/pinanbao/event")
 @RequestMapping("/pinanbao/event")
 @Permission
 @Permission
 public class EventApiController {
 public class EventApiController {
 
 
-    @Autowired
-    private BmsEventOrderService bmsEventOrderService;
+    @Resource
+    private PinanbaoService pinanbaoService;
 
 
     //TODO SOS求助 语音
     //TODO SOS求助 语音
-    //TODO 当前进行中的事件
-    //TODO 某个事件的处理历史
 
 
-    /**
-     *未处理事件查询 分页
-     * @param request
-     * @param pageReqVo
-     * @return
-     */
-    @GetMapping("/not-handle/list")
-    @ApiOperation(tags = {"未处理事件"},value = "未处理事件查询-分页")
-    public PageResult<List<EventOrderVO>> listNotHandle(HttpServletRequest request, @RequestHeader(value = "token") String token,
-                                                        PageReqVO pageReqVo){
-        try {
-            UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-            IPage<EventOrderVO> pageResponse = this.bmsEventOrderService.listEvent(OrderStatusEnum.TODO.getValue(), null,loginUser ,pageReqVo);
-            return PageResult.success(pageResponse.getRecords(),pageResponse.getCurrent(),pageResponse.getSize(),pageResponse.getTotal());
-        }catch (BDException e) {
-            log.error("未处理事件查询-分页列表出现异常",e);
-            return  PageResult.error(e.getMessage());
-        } catch (Exception e) {
-            log.error("事件处理: 未处理事件查询出现异常",e);
-            return PageResult.error( "获取列表失败");
-        }
-    }
-    @GetMapping("/my-handle/list")
-    @ApiOperation(tags = {"我的处理事件"},value = "我的处理事件查询 分页")
-    @ApiImplicitParams(value = {
-            @ApiImplicitParam(paramType = "header", name = "status", value = "状态"),
-            @ApiImplicitParam(paramType = "query", name = "status", value = "状态"),
-            @ApiImplicitParam(paramType = "query", name = "olderName", value = "老人姓名"),
-    })
-    public PageResult<List<EventOrderVO>> listMyHandle(HttpServletRequest request,@RequestHeader(value = "token") String token,
-                                                           @RequestParam(value = "status", required = false) String status,
-                                                           @RequestParam(value = "olderName", required = false) String olderName,
-                                                            PageReqVO pageReqVo){
-        try {
-            UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-            IPage<EventOrderVO> pageResponse = this.bmsEventOrderService.listEvent4MyDo(status, olderName,loginUser ,pageReqVo);
-            return PageResult.success(pageResponse.getRecords(),pageResponse.getCurrent(),pageResponse.getSize(),pageResponse.getTotal());
-        }catch (BDException e) {
-            log.error("我的处理事件查询-分页列表出现异常",e);
-            return  PageResult.error(e.getMessage());
-        } catch (Exception e) {
-            log.error("事件处理: 未处理事件查询出现异常",e);
-            return PageResult.error( "获取列表失败");
-        }
-    }
-
-    @GetMapping("/list")
-    @ApiOperation(tags = {"事件查询"},value = "事件查询 分页")
-    public PageResult<List<EventOrderVO>> list(HttpServletRequest request,
-                                                           @RequestParam(value = "status", required = false) String status,
-                                                           @RequestParam(value = "olderName", required = false) String olderName,
-                                                           PageReqVO pageReqVo){
-        try {
-            UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-            IPage<EventOrderVO> pageResponse = this.bmsEventOrderService.listEvent(status, olderName,loginUser ,pageReqVo);
-            return PageResult.success(pageResponse.getRecords(),pageResponse.getCurrent(),pageResponse.getSize(),pageResponse.getTotal());
-        }catch (BDException e) {
-            log.error("我的处理事件查询-分页列表出现异常",e);
-            return  PageResult.error(e.getMessage());
-        } catch (Exception e) {
-            log.error("事件处理: 未处理事件查询出现异常",e);
-            return PageResult.error( "获取列表失败");
-        }
-    }
-    @PostMapping("/receive/{orderId}")
-    @ApiOperation(tags = {"未处理事件"},value = "立即处理-领取工单")
-    public Result<Object> receiveOrder(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        this.bmsEventOrderService.receiveOrder(orderId,loginUser);
-        return  Result.success("领取工单成功!");
-    }
-    @GetMapping("/getEventInfo/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "事件详情")
-    public Result<EventOrderVO> getEventInfo(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        EventOrderVO orderInfo = this.bmsEventOrderService.getOrderInfo(orderId);
+    @GetMapping("/hasDoing")
+    @ApiOperation(tags = {"首页"},value = "当前进行中的事件")
+    public Result<EventOrderVO> getDoingEvent(HttpServletRequest request,@RequestHeader("token") String token,@RequestParam("houseId") Long houseId){
+        EventOrderVO orderInfo = this.pinanbaoService.getDoingEvent(houseId);
         return  Result.success("查询成功!",orderInfo);
         return  Result.success("查询成功!",orderInfo);
     }
     }
 
 
-    @GetMapping("/getOlderList/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "被监护人信息列表")
-    public Result<List<OrderOlderVO>> getOlderInfo(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        List<OrderOlderVO> older = this.bmsEventOrderService.queryOrderOlderList(orderId);
-        return  Result.success("查询成功!",older);
-    }
-
-    @GetMapping("/queryDoHis/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "事件处理历史记录")
-    public Result<List<OrderHandleHisVO>> queryDoHis(HttpServletRequest request, @RequestHeader("token") String token, @PathVariable("orderId") Long orderId){
-        return  Result.success("查询成功!",this.bmsEventOrderService.queryOrderHandleHis(orderId));
-    }
-
-    @GetMapping("/queryContactList/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "跟事件相关的联系人列表")
-    public Result<Object> queryContactList(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        return  Result.success("查询成功!",this.bmsEventOrderService.queryContactList(orderId));
-    }
-
-    @PostMapping("/complete/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "完成工单")
-    public Result<Object> complete(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        this.bmsEventOrderService.updateOrderStatus(orderId,OrderStatusEnum.COMPLETE);
-        return  Result.success("操作成功!");
-    }
-
-    @GetMapping("/keyAuth/list/{orderId}")
-    @ApiOperation(tags = {"事件处理"},value = "钥匙申请列表")
-    public Result<List<OrderKeyApplyVO>> queryKeyAuthList(HttpServletRequest request, @RequestHeader("token") String token, @PathVariable("orderId") Long orderId){
-        return  Result.success("查询成功!",this.bmsEventOrderService.queryKeyAuthList(orderId));
-    }
-    @PostMapping("/key/auth/{applyId}")
-    @ApiOperation(tags = {"事件处理"},value = "钥匙授权")
-    public Result<Object> keyAuth(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("applyId") Long applyId){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        if (this.bmsEventOrderService.keyAuth(applyId,loginUser)) {
-            return  Result.success("钥匙授权成功!");
-        }else{
-            return  Result.error("钥匙授权失败!");
-        }
-    }
-    @PostMapping("/contact/updateStatus/{orderContactId}/{status}")
-    @ApiOperation(tags = {"事件处理"},value = "更新联系人状态")
-    public Result<Object> updateOrderContactStatus(HttpServletRequest request,@RequestHeader("token") String token,
-                                                   @PathVariable("orderContactId") Long orderContactId,
-                                                   @PathVariable("status") Integer status){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        if (this.bmsEventOrderService.updateOrderContactStatus(orderContactId,status,loginUser)) {
-            return  Result.success("更新成功!");
-        }else{
-            return  Result.error("更新失败!");
-        }
-
-    }
-    @PostMapping("/sendSms")
-    @ApiOperation(tags = {"事件处理"},value = "发送短信")
-    public Result<Object> sendSms(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-
-        return  Result.success("发送短信成功!");
-    }
-    @GetMapping("/getCallRadio/{hisId}")
-    @ApiOperation(tags = {"事件处理"},value = "获取通话录音")
-    public Result<Object> getCallRadio(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("hisId") Long hisId){
-        CcCallResultVO ccCallResultVO = this.bmsEventOrderService.getCallRadio(hisId);
-        if (ccCallResultVO != null) {
-            return  Result.success("获取通话录音!");
-        }else{
-            return  Result.error("通话记录不存在!");
-        }
-    }
-    @GetMapping("/stat")
-    @ApiOperation(tags = {"事件查询"},value = "查询事件统计信息")
-    public Result<Object> stat(HttpServletRequest request,@RequestHeader("token") String token){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        EventStaVO ccCallResultVO = this.bmsEventOrderService.statOrder(loginUser);
-        if (ccCallResultVO != null) {
-            return  Result.success("查询成功!");
-        }else{
-            return  Result.error("查询失败!");
-        }
+    @GetMapping("/getEventInfo")
+    @ApiOperation(tags = {"事件处理"},value = "某个事件的详细处理记录")
+    public Result<List<OrderHandleHisVO>> queryDoHis(HttpServletRequest request, @RequestHeader("token") String token, @RequestParam("orderId") Long orderId){
+        return  Result.success("查询成功!",this.pinanbaoService.queryOrderHandleHis(orderId));
     }
     }
 
 
 }
 }

+ 21 - 17
src/main/java/com/care/client/controller/HouseApiController.java

@@ -1,32 +1,23 @@
 package com.care.client.controller;
 package com.care.client.controller;
 
 
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.care.bms.service.BmsEventOrderService;
 import com.care.client.service.PassportService;
 import com.care.client.service.PassportService;
 import com.care.client.service.PinanbaoService;
 import com.care.client.service.PinanbaoService;
 import com.care.client.vo.DeviceMonitorVO;
 import com.care.client.vo.DeviceMonitorVO;
 import com.care.client.vo.MemberInfoVO;
 import com.care.client.vo.MemberInfoVO;
 import com.care.common.annotation.Permission;
 import com.care.common.annotation.Permission;
-import com.care.common.enums.OrderStatusEnum;
 import com.care.common.exception.BDException;
 import com.care.common.exception.BDException;
 import com.care.common.util.PageResult;
 import com.care.common.util.PageResult;
 import com.care.common.util.Result;
 import com.care.common.util.Result;
-import com.care.common.util.WebPageUtils;
-import com.care.common.vo.PageReqVO;
-import com.care.common.vo.UserLogindConvertVO;
 import com.care.common.vo.device.DeviceVO;
 import com.care.common.vo.device.DeviceVO;
-import com.care.common.vo.event.*;
-import com.care.common.vo.outcall.CcCallResultVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.MediaType;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -44,8 +35,6 @@ public class HouseApiController {
     private PassportService passportService;
     private PassportService passportService;
     @Autowired
     @Autowired
     private PinanbaoService pinanbaoService;
     private PinanbaoService pinanbaoService;
-    //TODO 设备列表
-    //todo 某个设备的心率、呼吸
     //TODO 某个设备的睡眠报告 夜间、白天
     //TODO 某个设备的睡眠报告 夜间、白天
 
 
     /**
     /**
@@ -55,10 +44,10 @@ public class HouseApiController {
      */
      */
     @GetMapping("/device/list")
     @GetMapping("/device/list")
     @ApiOperation(tags = {"首页"},value = "设备列表")
     @ApiOperation(tags = {"首页"},value = "设备列表")
-    public Result<List<DeviceVO>> listNotHandle(@RequestHeader(value = "token") String token){
+    public Result<List<DeviceVO>> deviceList(@RequestHeader(value = "token") String token, @RequestParam("houseId") Long houseId){
         try {
         try {
-            MemberInfoVO current = passportService.checkToken(token);
-            List<DeviceVO> datas = pinanbaoService.devList(current.getId());
+            passportService.checkToken(token);
+            List<DeviceVO> datas = pinanbaoService.devList(houseId);
             return Result.success(datas);
             return Result.success(datas);
         }catch (BDException e) {
         }catch (BDException e) {
             log.error("未处理事件查询-分页列表出现异常",e);
             log.error("未处理事件查询-分页列表出现异常",e);
@@ -73,7 +62,6 @@ public class HouseApiController {
     @ApiOperation(tags = {"首页"},value = "设备的监测信息")
     @ApiOperation(tags = {"首页"},value = "设备的监测信息")
     public Result<DeviceMonitorVO> listNotHandle(@RequestHeader(value = "token") String token, @RequestParam("devId") Long devId){
     public Result<DeviceMonitorVO> listNotHandle(@RequestHeader(value = "token") String token, @RequestParam("devId") Long devId){
         try {
         try {
-
             return Result.success(this.pinanbaoService.devMonitorData(devId));
             return Result.success(this.pinanbaoService.devMonitorData(devId));
         }catch (BDException e) {
         }catch (BDException e) {
             log.error("未处理事件查询-分页列表出现异常",e);
             log.error("未处理事件查询-分页列表出现异常",e);
@@ -84,4 +72,20 @@ public class HouseApiController {
         }
         }
     }
     }
 
 
+    @PostMapping(value = "/sos" ,consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+    @ApiOperation(tags = {"首页"},value = "SOS呼叫",httpMethod ="POST" ,response = Result.class)
+    public Result<Object> sos(@RequestHeader("token") String token, @RequestParam(value = "file") MultipartFile file){
+        try {
+            MemberInfoVO memberInfoVO = passportService.checkToken(token);
+            this.pinanbaoService.sos(memberInfoVO,file);
+            return Result.success("呼叫成功");
+        }
+        catch (BDException e) {
+            log.error("主动呼叫异常BDException",e);
+            return Result.error("呼叫失败!");
+        }catch (Exception e) {
+            log.error("线路管理:线路导入出现异常",e);
+            return Result.error("呼叫失败!");
+        }
+    }
 }
 }

+ 111 - 19
src/main/java/com/care/client/service/PinanbaoService.java

@@ -2,20 +2,25 @@ package com.care.client.service;
 
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.care.client.vo.DeviceMonitorVO;
 import com.care.client.vo.DeviceMonitorVO;
 import com.care.client.vo.HouseContactVO;
 import com.care.client.vo.HouseContactVO;
-import com.care.common.entity.CareHouseContact;
-import com.care.common.entity.CareMemberInfo;
-import com.care.common.service.CareDeviceService;
-import com.care.common.service.CareHouseContactService;
-import com.care.common.service.CareMemberInfoService;
+import com.care.client.vo.MemberInfoVO;
+import com.care.common.entity.*;
+import com.care.common.enums.OrderStatusEnum;
+import com.care.common.enums.OrderTypeEnum;
+import com.care.common.service.*;
 import com.care.common.vo.device.DeviceVO;
 import com.care.common.vo.device.DeviceVO;
+import com.care.common.vo.event.EventOrderVO;
+import com.care.common.vo.event.OrderHandleHisVO;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.compress.utils.Lists;
 import org.apache.commons.compress.utils.Lists;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -32,15 +37,25 @@ public class PinanbaoService {
     private CareMemberInfoService careMemberInfoService;
     private CareMemberInfoService careMemberInfoService;
     @Resource
     @Resource
     private CareHouseContactService careHouseContactService;
     private CareHouseContactService careHouseContactService;
-
+    @Resource
+    private CareEventOrderService careEventOrderService;
+    @Resource
+    private CareEventOrderHandleHisService careEventOrderHandleHisService;
+    @Resource
+    private FileUploadService fileUploadService;
+    @Resource
+    private CareHouseService careHouseService;
+    @Resource
+    private CareOrganizationService careOrganizationService;
+    @Resource
+    private CareStationService careStationService;
     /**
     /**
      * 查询房屋的设备列表
      * 查询房屋的设备列表
-     * @param memberId
+     * @param houseId
      * @return
      * @return
      */
      */
-    public List<DeviceVO> devList(Long memberId){
-        CareMemberInfo memberInfo = this.careMemberInfoService.getById(memberId);
-        return this.careDeviceService.queryListByHouseId(memberInfo.getHouseId());
+    public List<DeviceVO> devList(Long houseId){
+        return this.careDeviceService.queryListByHouseId(houseId);
     }
     }
 
 
     /**
     /**
@@ -49,16 +64,18 @@ public class PinanbaoService {
      * @return
      * @return
      */
      */
     public DeviceMonitorVO devMonitorData(Long devId){
     public DeviceMonitorVO devMonitorData(Long devId){
-        //TODO 获取监测数据,从redis中获取
+        CareDevice device = this.careDeviceService.getById(devId);
         DeviceMonitorVO vo = new DeviceMonitorVO();
         DeviceMonitorVO vo = new DeviceMonitorVO();
-        vo.setId(devId);
-        vo.setBreathRate(30);
-        vo.setHeartRate(60);
-        vo.setActivityDistance(600);
-        vo.setActivityTimeHour(1);
-        vo.setActivityTimeMinute(20);
-        vo.setSleepTimeHour(8);
-        vo.setSleepTimeMinute(7);
+        if (device!=null){
+            vo.setId(devId);
+            vo.setBreathRate(device.getBreathRate());
+            vo.setHeartRate(device.getHeartRate());
+            vo.setActivityDistance(600);
+            vo.setActivityTimeHour(1);
+            vo.setActivityTimeMinute(20);
+            vo.setSleepTimeHour(8);
+            vo.setSleepTimeMinute(7);
+        }
         return vo;
         return vo;
     }
     }
 
 
@@ -83,4 +100,79 @@ public class PinanbaoService {
         }
         }
         return vos;
         return vos;
     }
     }
+
+    /**
+     * 查询正在进行中的事件
+     * @param houseId
+     * @return
+     */
+    public EventOrderVO getDoingEvent(Long houseId){
+        EventOrderVO vo = null;
+        QueryWrapper<CareEventOrder> queryWrapper = new QueryWrapper<>();
+        queryWrapper.lambda().eq(CareEventOrder::getHouseId,houseId).and(item->
+            item.eq(CareEventOrder::getStatus, OrderStatusEnum.TODO.getValue()).or(i->
+                i.eq(CareEventOrder::getStatus,OrderStatusEnum.DOING.getValue())
+            )
+        ).orderByAsc(CareEventOrder::getCreateTime);
+        List<CareEventOrder> list = this.careEventOrderService.list(queryWrapper);
+        if (CollUtil.isNotEmpty(list)){
+            CareEventOrder order = list.get(0);
+            vo = new EventOrderVO();
+            BeanUtil.copyProperties(order,vo);
+        }
+        return vo;
+    }
+
+    /**
+     * 获取处理记录
+     * @return
+     */
+    public List<OrderHandleHisVO> queryOrderHandleHis(Long orderId){
+        List<OrderHandleHisVO> result = Lists.newArrayList();
+        QueryWrapper<CareEventOrderHandleHis> queryWrapper = new QueryWrapper<>();
+        queryWrapper.lambda().eq(CareEventOrderHandleHis::getOrderId,orderId)
+                .orderByDesc(CareEventOrderHandleHis::getCreateTime);
+        List<CareEventOrderHandleHis> datas = this.careEventOrderHandleHisService.list(queryWrapper);
+        if (CollUtil.isNotEmpty(datas)){
+            datas.forEach(item ->{
+                OrderHandleHisVO hisVO = new OrderHandleHisVO();
+                BeanUtil.copyProperties(item,hisVO);
+                result.add(hisVO);
+            });
+        }
+        return result;
+    }
+
+    /**
+     *  老人 SOS呼叫
+     * @param member
+     * @param houseId
+     * @param file
+     * @return
+     */
+    public boolean sos(MemberInfoVO member,  MultipartFile file){
+        Date now  = DateUtil.date();
+        //1. 保存文件
+        String url = fileUploadService.upload(file,"sos");
+        //2. 查询房屋
+        CareHouse house = this.careHouseService.getById(member.getHouseId());
+        //2. 生成工单
+        CareEventOrder order = new CareEventOrder();
+        order.setOrgId(house.getOrgId());
+        order.setOrgName(this.careOrganizationService.getById(house.getOrgId()).getName());
+        order.setStationId(house.getStationId());
+        order.setStationName(this.careStationService.getById(house.getStationId()).getName());
+        order.setHouseId(house.getId());
+        order.setHouseName(house.getName());
+        order.setTitle(house.getAddr()+" "+member.getName()+" 主动呼叫");
+        order.setOlderId(member.getId());
+        order.setOlderName(member.getName());
+        order.setVoiceUrl(url);
+        order.setOrderType(OrderTypeEnum.ZHU_DONG_HU_JIAO.getValue());
+        order.setStatus(OrderStatusEnum.TODO.getValue());
+        order.setCreateTime(now);
+        order.setModifyTime(now);
+        this.careEventOrderService.saveOrder(order);
+        return true;
+    }
 }
 }

+ 15 - 6
src/main/java/com/care/common/entity/CareDevice.java

@@ -17,7 +17,7 @@ import java.util.Date;
  * 被监护人-设备(CareDevice)实体类
  * 被监护人-设备(CareDevice)实体类
  *
  *
  * @author makejava
  * @author makejava
- * @since 2021-06-02 21:42:00
+ * @since 2021-06-08 22:26:07
  */
  */
 
 
 @Data
 @Data
@@ -26,7 +26,7 @@ import java.util.Date;
 @TableName("care_device")
 @TableName("care_device")
 @ApiModel(value = "被监护人-设备", description = "")
 @ApiModel(value = "被监护人-设备", description = "")
 public class CareDevice implements Serializable {
 public class CareDevice implements Serializable {
-    private static final long serialVersionUID = -55934448200777465L;
+    private static final long serialVersionUID = -22853591259670893L;
 
 
     @TableId(value = "ID", type = IdType.AUTO)
     @TableId(value = "ID", type = IdType.AUTO)
     private Long id;
     private Long id;
@@ -42,9 +42,14 @@ public class CareDevice implements Serializable {
     private Long stationId;
     private Long stationId;
 
 
 
 
+    @ApiModelProperty("房屋ID")
+    @TableField("HOUSE_ID")
+    private Long houseId;
+
+
     @ApiModelProperty("设备名称")
     @ApiModelProperty("设备名称")
-    @TableField("NAME")
-    private String name;
+    @TableField("DEV_NAME")
+    private String devName;
 
 
 
 
     @ApiModelProperty("设备编码")
     @ApiModelProperty("设备编码")
@@ -91,11 +96,15 @@ public class CareDevice implements Serializable {
     @TableField("HEART_RATE")
     @TableField("HEART_RATE")
     private Integer heartRate;
     private Integer heartRate;
 
 
+
     @ApiModelProperty("设备mqtt消息topic")
     @ApiModelProperty("设备mqtt消息topic")
-    @TableField("topic")
+    @TableField("TOPIC")
     private String topic;
     private String topic;
 
 
+
     @ApiModelProperty("设备mqtt消息客户端ID")
     @ApiModelProperty("设备mqtt消息客户端ID")
-    @TableField("client_id")
+    @TableField("CLIENT_ID")
     private String clientId;
     private String clientId;
+
+
 }
 }

+ 18 - 3
src/main/java/com/care/common/entity/CareEventOrder.java

@@ -17,7 +17,7 @@ import java.util.Date;
  * 事件定单表(CareEventOrder)实体类
  * 事件定单表(CareEventOrder)实体类
  *
  *
  * @author makejava
  * @author makejava
- * @since 2021-06-02 22:01:03
+ * @since 2021-06-08 23:46:54
  */
  */
 
 
 @Data
 @Data
@@ -26,7 +26,7 @@ import java.util.Date;
 @TableName("care_event_order")
 @TableName("care_event_order")
 @ApiModel(value = "事件定单表", description = "")
 @ApiModel(value = "事件定单表", description = "")
 public class CareEventOrder implements Serializable {
 public class CareEventOrder implements Serializable {
-    private static final long serialVersionUID = -33521636703717060L;
+    private static final long serialVersionUID = 580465519695293158L;
 
 
     @TableId(value = "ID", type = IdType.AUTO)
     @TableId(value = "ID", type = IdType.AUTO)
     private Long id;
     private Long id;
@@ -62,6 +62,16 @@ public class CareEventOrder implements Serializable {
     private String houseName;
     private String houseName;
 
 
 
 
+    @ApiModelProperty("设备ID")
+    @TableField("DEV_ID")
+    private Long devId;
+
+
+    @ApiModelProperty("设备名称")
+    @TableField("DEV_NAME")
+    private String devName;
+
+
     @ApiModelProperty("被监护人ID")
     @ApiModelProperty("被监护人ID")
     @TableField("OLDER_ID")
     @TableField("OLDER_ID")
     private Long olderId;
     private Long olderId;
@@ -77,11 +87,16 @@ public class CareEventOrder implements Serializable {
     private String title;
     private String title;
 
 
 
 
-    @ApiModelProperty("工单分类:  21:跌倒 22:久滞 23坠床 31主动呼叫")
+    @ApiModelProperty("工单分类: 21:跌倒 22:久滞 23坠床 31主动呼叫")
     @TableField("ORDER_TYPE")
     @TableField("ORDER_TYPE")
     private String orderType;
     private String orderType;
 
 
 
 
+    @ApiModelProperty("语音URL,主动呼叫时有值")
+    @TableField("VOICE_URL")
+    private String voiceUrl;
+
+
     @ApiModelProperty("状态:0未处理,1处理中,2已完成,3主动取消,4已归档")
     @ApiModelProperty("状态:0未处理,1处理中,2已完成,3主动取消,4已归档")
     @TableField("STATUS")
     @TableField("STATUS")
     private String status;
     private String status;

+ 0 - 49
src/main/java/com/care/common/entity/CareHouseDeviceRel.java

@@ -1,49 +0,0 @@
-package com.care.common.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-
-import java.io.Serializable;
-
-/**
- * 设备-房屋关系表(CareHouseDeviceRel)实体类
- *
- * @author makejava
- * @since 2021-06-05 22:50:50
- */
-
-@Data
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@TableName("care_house_device_rel")
-@ApiModel(value = "设备-房屋关系表", description = "")
-public class CareHouseDeviceRel implements Serializable {
-    private static final long serialVersionUID = 542599983021196368L;
-
-    @TableId(value = "ID", type = IdType.AUTO)
-    private Long id;
-
-
-    @ApiModelProperty("设备ID")
-    @TableField("DEV_ID")
-    private Long devId;
-
-
-    @ApiModelProperty("房屋ID")
-    @TableField("HOUSE_ID")
-    private Long houseId;
-
-
-    @ApiModelProperty("设备别名:例如卧室")
-    @TableField("DEV_ALIAS_NAME")
-    private String devAliasName;
-
-
-}

+ 53 - 0
src/main/java/com/care/common/enums/LogTypeEnum.java

@@ -0,0 +1,53 @@
+package com.care.common.enums;
+
+
+/**
+ * @Author:java
+ * @Date: 2021/05/27
+ */
+public enum LogTypeEnum {
+    /**
+     *日志类型:
+     * 1: 发生事件
+     * 2:呼叫日志
+     * 3 钥匙日志
+     * 4 管家日志
+     * 5 短信
+     */
+    DEV_EVENT(1,"设备监控"),
+    OLDER_EVENT(2,"老人呼叫"),
+    OUT_CALL(3,"呼叫"),
+    KEY(4,"钥匙"),
+    CHAMB(5,"管家"),
+    SMS(6,"短信");
+    private Integer value;
+    private String name;
+    LogTypeEnum(Integer value, String name) {
+        this.value = value;
+        this.name = name;
+    }
+    public Integer getValue() {
+        return value;
+    }
+
+    public static String getCodeToName(Integer code){
+        if (code == null){
+            return null;
+        }
+        if (DEV_EVENT.getValue().intValue() == code.intValue()){
+            return  DEV_EVENT.name;
+        }else if (OLDER_EVENT.getValue().intValue() == code.intValue()){
+            return  OLDER_EVENT.name;
+        }else if (OUT_CALL.getValue().intValue() == code.intValue()){
+            return  OUT_CALL.name;
+        }else if (KEY.getValue().intValue() == code.intValue()){
+            return  KEY.name;
+        }else if (CHAMB.getValue().intValue() == code.intValue()){
+            return CHAMB.name;
+        }else if (SMS.getValue().intValue() == code.intValue()){
+            return SMS.name;
+        }
+
+        return null;
+    }
+}

+ 5 - 2
src/main/java/com/care/common/enums/RelationTypeEnum.java

@@ -11,7 +11,8 @@ public enum RelationTypeEnum {
     /**
     /**
      * 关系
      * 关系
      */
      */
-    OLDER("older","本人"),
+    HOUSE("house","房屋"),
+    OLDER("older","老人"),
     KINSMAN("kinsman","亲属"),
     KINSMAN("kinsman","亲属"),
     NEIGHBOR("neighbor","邻居"),
     NEIGHBOR("neighbor","邻居"),
     CHANMB("chanmb","管家"),
     CHANMB("chanmb","管家"),
@@ -33,7 +34,9 @@ public enum RelationTypeEnum {
         if (StrUtil.isEmpty(code)){
         if (StrUtil.isEmpty(code)){
             return null;
             return null;
         }
         }
-        if (OLDER.getValue().equals(code)){
+        if (HOUSE.getValue().equals(code)){
+            return  HOUSE.name;
+        }else if (OLDER.getValue().equals(code)){
             return  OLDER.name;
             return  OLDER.name;
         }else if (KINSMAN.getValue().equals(code)){
         }else if (KINSMAN.getValue().equals(code)){
             return  KINSMAN.name;
             return  KINSMAN.name;

+ 0 - 15
src/main/java/com/care/common/mapper/CareHouseDeviceRelMapper.java

@@ -1,15 +0,0 @@
-package com.care.common.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.care.common.entity.CareHouseDeviceRel;
-
-
-/**
- * 设备-房屋关系表(CareHouseDeviceRel)表数据库访问层
- *
- * @author makejava
- * @since 2021-06-02 21:43:19
- */
-public interface CareHouseDeviceRelMapper extends BaseMapper<CareHouseDeviceRel> {
-
-}

+ 2 - 0
src/main/java/com/care/common/service/CareEventOrderService.java

@@ -19,4 +19,6 @@ public interface CareEventOrderService extends IService<CareEventOrder> {
      * @return
      * @return
      */
      */
     EventStaVO statOrder(Long orgId, Long stationId);
     EventStaVO statOrder(Long orgId, Long stationId);
+
+    boolean saveOrder(CareEventOrder order);
 }
 }

+ 0 - 14
src/main/java/com/care/common/service/CareHouseDeviceRelService.java

@@ -1,14 +0,0 @@
-package com.care.common.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.care.common.entity.CareHouseDeviceRel;
-
-/**
- * 设备-房屋关系表(CareHouseDeviceRel)表服务接口
- *
- * @author makejava
- * @since 2021-06-02 21:43:19
- */
-public interface CareHouseDeviceRelService extends IService<CareHouseDeviceRel> {
-
-}

+ 21 - 0
src/main/java/com/care/common/service/FileUploadService.java

@@ -0,0 +1,21 @@
+package com.care.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.care.common.entity.CareEventOrderChamb;
+import org.springframework.web.multipart.MultipartFile;
+
+/**
+ * 管家工单(CareEventOrderChamb)表服务接口
+ *
+ * @author makejava
+ * @since 2021-06-02 23:31:34
+ */
+public interface FileUploadService {
+    /**
+     * 上传文件
+     * @param file
+     * @param dirCode
+     * @return  访问URL
+     */
+    String upload(MultipartFile file,  String dirCode);
+}

+ 145 - 2
src/main/java/com/care/common/service/impl/CareEventOrderServiceImpl.java

@@ -1,11 +1,21 @@
 package com.care.common.service.impl;
 package com.care.common.service.impl;
 
 
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.care.common.entity.CareEventOrder;
+import com.care.common.entity.*;
+import com.care.common.enums.*;
 import com.care.common.mapper.CareEventOrderMapper;
 import com.care.common.mapper.CareEventOrderMapper;
-import com.care.common.service.CareEventOrderService;
+import com.care.common.service.*;
 import com.care.common.vo.event.EventStaVO;
 import com.care.common.vo.event.EventStaVO;
+import org.apache.commons.compress.utils.Lists;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+import java.util.List;
 
 
 /**
 /**
  * 事件定单表(CareEventOrder)表服务实现类
  * 事件定单表(CareEventOrder)表服务实现类
@@ -15,6 +25,24 @@ import org.springframework.stereotype.Service;
  */
  */
 @Service
 @Service
 public class CareEventOrderServiceImpl extends ServiceImpl<CareEventOrderMapper, CareEventOrder> implements CareEventOrderService {
 public class CareEventOrderServiceImpl extends ServiceImpl<CareEventOrderMapper, CareEventOrder> implements CareEventOrderService {
+
+    @Resource
+    private CareEventOrderHandleHisService careEventOrderHandleHisService;
+    @Resource
+    private CareHouseContactService careHouseContactService;
+    @Resource
+    private CareOlderService careOlderService;
+    @Resource
+    private CareEventOrderOlderService careEventOrderOlderService;
+    @Resource
+    private CareEventOrderChambService careEventOrderChambService;
+    @Resource
+    private CareEventOrderContactStatusService careEventOrderContactStatusService;
+    @Resource
+    private CareHouseService careHouseService;
+
+    @Resource
+    private CareSysUserService careSysUserService;
     /**
     /**
      * 统计事件数量
      * 统计事件数量
      *
      *
@@ -26,4 +54,119 @@ public class CareEventOrderServiceImpl extends ServiceImpl<CareEventOrderMapper,
     public EventStaVO statOrder(Long orgId, Long stationId) {
     public EventStaVO statOrder(Long orgId, Long stationId) {
         return this.baseMapper.statOrder(orgId,stationId);
         return this.baseMapper.statOrder(orgId,stationId);
     }
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public boolean saveOrder(CareEventOrder order){
+        this.baseMapper.insert(order);
+        CareEventOrderHandleHis his = new CareEventOrderHandleHis();
+        his.setOrgId(order.getOrgId());
+        his.setStationId(order.getStationId());
+        his.setOrderId(order.getId());
+        his.setHouseId(order.getHouseId());
+        if (OrderTypeEnum.ZHU_DONG_HU_JIAO.getValue().equals(order.getOrderType()) || OrderTypeEnum.HU_WAI_HU_JIAO.getValue().equals(order.getOrderType())){
+            his.setLogType(LogTypeEnum.OLDER_EVENT.getValue());
+            his.setLogObjectId(order.getOlderId());
+            his.setLogObjectName(order.getOlderName());
+            his.setLogResult(OrderTypeEnum.getCodeToName(order.getOrderType()));
+            his.setRelationTypeDesc(RelationTypeEnum.OLDER.getName());
+        }else{
+            his.setLogType(LogTypeEnum.DEV_EVENT.getValue());
+            his.setLogObjectId(order.getDevId());
+            his.setLogObjectName(order.getDevName());
+            his.setLogResult("发生"+OrderTypeEnum.getCodeToName(order.getOrderType()));
+            his.setRelationTypeDesc(RelationTypeEnum.HOUSE.getName());
+        }
+        his.setCreateTime(DateUtil.date());
+        addOlderToOrderOlder(order);
+        addChamberlainToOrder(order);
+        addContactToOrderContact(order);
+        this.careEventOrderHandleHisService.save(his);
+        return true;
+    }
+
+    /**
+     * 将老人加入到 工单中
+     * @param order
+     */
+    private void addOlderToOrderOlder(CareEventOrder order){
+        QueryWrapper<CareOlder> queryWrapper = new QueryWrapper<>();
+        queryWrapper.lambda().eq(CareOlder::getHouseId,order.getHouseId());
+        List<CareOlder> olders = this.careOlderService.list(queryWrapper);
+        if (CollUtil.isNotEmpty(olders)){
+            List<CareEventOrderOlder>  ceoos = Lists.newArrayList();
+            olders.forEach(item -> {
+                CareEventOrderOlder ceoo = new CareEventOrderOlder();
+                BeanUtil.copyProperties(item,ceoo);
+                ceoo.setOrderId(order.getId());
+                ceoo.setOlderId(item.getId());
+                if (order.getOlderId() == item.getId()){
+                    //主动呼叫
+                    ceoo.setIsZhudong(1);
+                }else{
+                    ceoo.setIsZhudong(0);
+                }
+                ceoo.setStatus(OrderOlderStatusEnum.WEI_LIAN_XI.getValue());
+                ceoo.setCreateTime(DateUtil.date());
+                ceoos.add(ceoo);
+            });
+            this.careEventOrderOlderService.saveBatch(ceoos);
+        }
+    }
+
+    /**
+     * 将管家加入到联系人当中
+     * @param order
+     */
+    private void addChamberlainToOrder(CareEventOrder order){
+        CareHouse house = this.careHouseService.getById(order.getHouseId());
+        if (house != null){
+            CareSysUser user = this.careSysUserService.getById(house.getChambId());
+            if (user != null){
+                CareEventOrderChamb chamb = new CareEventOrderChamb();
+                chamb.setOrgId(user.getOrgId());
+                chamb.setStationId(user.getStationId());
+                chamb.setOrderId(order.getId());
+                chamb.setChambId(user.getId());
+                chamb.setChambName(user.getName());
+                chamb.setPhone(user.getPhone());
+                chamb.setStatus(0);
+                chamb.setHouseId(house.getId());
+                chamb.setStatus(0);
+                chamb.setCreateTime(DateUtil.date());
+                chamb.setModifyTime(DateUtil.date());
+                this.careEventOrderChambService.save(chamb);
+            }
+        }
+    }
+
+    /**
+     * 将紧急联系人加入到联系人当中
+     * @param order
+     */
+    private void addContactToOrderContact(CareEventOrder order){
+        List<CareHouseContact> cons = this.careHouseContactService.queryContactByHouseId(order.getHouseId());
+        if (CollUtil.isNotEmpty(cons)){
+            List<CareEventOrderContactStatus> orderContactList = Lists.newArrayList();
+            cons.forEach(item ->{
+                CareEventOrderContactStatus orderContactStatus = new CareEventOrderContactStatus();
+                orderContactStatus.setOrgId(order.getOrgId());
+                orderContactStatus.setStationId(order.getStationId());
+                orderContactStatus.setOrderId(order.getId());
+                orderContactStatus.setContactRole(UserRoleEnum.CONTACT.getValue());
+                orderContactStatus.setContactId(item.getId());
+                orderContactStatus.setStatus(ContactorStatusEnum.WEI_LIAN_XI.getValue());
+                orderContactStatus.setContactName(item.getName());
+                orderContactStatus.setContactPhone(item.getPhone());
+                orderContactStatus.setLongitude(item.getLongitude());
+                orderContactStatus.setLatitude(item.getLatitude());
+                orderContactStatus.setRelationTypeDesc(RelationTypeEnum.getCodeToName(item.getRelationType()));
+                orderContactStatus.setContactLevel(item.getContactLevel());
+                orderContactStatus.setCreateTime(DateUtil.date());
+                orderContactStatus.setModifyTime(DateUtil.date());
+                orderContactList.add(orderContactStatus);
+            });
+            this.careEventOrderContactStatusService.saveBatch(orderContactList);
+        }
+    }
 }
 }

+ 0 - 18
src/main/java/com/care/common/service/impl/CareHouseDeviceRelServiceImpl.java

@@ -1,18 +0,0 @@
-package com.care.common.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.care.common.entity.CareHouseDeviceRel;
-import com.care.common.mapper.CareHouseDeviceRelMapper;
-import com.care.common.service.CareHouseDeviceRelService;
-import org.springframework.stereotype.Service;
-
-/**
- * 设备-房屋关系表(CareHouseDeviceRel)表服务实现类
- *
- * @author makejava
- * @since 2021-06-02 21:43:19
- */
-@Service
-public class CareHouseDeviceRelServiceImpl extends ServiceImpl<CareHouseDeviceRelMapper, CareHouseDeviceRel> implements CareHouseDeviceRelService {
-
-}

+ 57 - 0
src/main/java/com/care/common/service/impl/FileUploadServiceImpl.java

@@ -0,0 +1,57 @@
+package com.care.common.service.impl;
+
+import cn.hutool.core.io.FileUtil;
+import cn.hutool.core.lang.Snowflake;
+import cn.hutool.core.util.IdUtil;
+import com.care.common.exception.BDException;
+import com.care.common.service.FileUploadService;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.File;
+import java.io.IOException;
+
+/**
+ * @Author: lilt
+ * @Date: 2021/6/8
+ * @Desc:
+ */
+@Service
+public class FileUploadServiceImpl implements FileUploadService {
+    @Value("${file.savePath:#{null}}")
+    private String filePath;
+    @Value("${file.url:#{null}}")
+    private String fileUrl;
+    /**
+     * 上传文件
+     *
+     * @param file
+     * @param dirCode
+     * @return 访问URL
+     */
+    @Override
+    public String upload(MultipartFile file, String dirCode) {
+        String rootPath = filePath + File.separator + dirCode;
+        String url = dirCode;
+        try {
+            if (file!=null ){
+                String fileName = file.getOriginalFilename();
+                File savePath = new File(rootPath);
+                if(!savePath.exists()) savePath.mkdirs();
+                String suffix=fileName.substring(file.getOriginalFilename().lastIndexOf("."));
+                Snowflake snowflake = IdUtil.getSnowflake(1, 1);
+                long id = snowflake.nextId();
+                String backName =  id + suffix;
+
+                rootPath = rootPath + File.separator+backName;
+                url = url + "/" + backName;
+                File backFile = new File(rootPath);
+                FileUtil.writeFromStream(file.getInputStream(),backFile,true);
+            }
+        } catch (IOException e) {
+            throw new BDException("上传失败",e);
+        }
+        return fileUrl  + url;
+    }
+}

+ 1 - 1
src/main/java/com/care/common/vo/device/DeviceVO.java

@@ -20,5 +20,5 @@ public class DeviceVO {
 
 
 
 
     @ApiModelProperty("设备别名:例如卧室")
     @ApiModelProperty("设备别名:例如卧室")
-    private String devAliasName;
+    private String devName;
 }
 }

+ 2 - 0
src/main/resources/application-dev.properties

@@ -23,3 +23,5 @@ spring.redis.database=0
 spring.redis.timeout=500
 spring.redis.timeout=500
 spring.redis.password=106@!en4
 spring.redis.password=106@!en4
 #################################### 以下是redis的集群标准配置 结束 ##############################
 #################################### 以下是redis的集群标准配置 结束 ##############################
+file.savePath=/root/care
+file.url=http://124.70.58.209:17777/

+ 1 - 1
src/main/resources/application.properties

@@ -58,4 +58,4 @@ wx.pinanbao.tokenUrl=https://api.weixin.qq.com/cgi-bin/token?grant_type=client_c
 wx.pinanbao.appid=wxda02870032b8f928
 wx.pinanbao.appid=wxda02870032b8f928
 wx.pinanbao.secret=5984b6cf5dad4693eb60cbc494d9f385
 wx.pinanbao.secret=5984b6cf5dad4693eb60cbc494d9f385
 
 
-file.savePath=/data/rfcare-file
+

+ 4 - 4
src/main/resources/mybatis/BigSreenMapper.xml

@@ -152,15 +152,15 @@
 
 
     <select id="selectOrgBigScreenDeviceList" resultType="com.care.bigscreen.vo.BigScreenDeviceVO">
     <select id="selectOrgBigScreenDeviceList" resultType="com.care.bigscreen.vo.BigScreenDeviceVO">
         SELECT
         SELECT
-        a.name deviceName,
+        a.dev_name deviceName,
         (case when a.longitude is null then
         (case when a.longitude is null then
-        (select b.longitude from care_house b where b.id in (select c.house_id from care_house_device_rel c where c.dev_id = a.id) limit 1)
+        (select b.longitude from care_house b where b.id = a.house_id)
         else a.longitude  end ) longitude,
         else a.longitude  end ) longitude,
         (case when a.longitude is null then
         (case when a.longitude is null then
-        (select b.latitude from care_house b where b.id in (select c.house_id from care_house_device_rel c where c.dev_id = a.id) limit 1)
+        (select b.latitude from care_house b where b.id = a.house_id)
         else a.latitude  end ) latitude,
         else a.latitude  end ) latitude,
         a.status,
         a.status,
-        (select b.addr from care_house b where b.id in (select c.house_id from care_house_device_rel c where c.dev_id = a.id) limit 1) deviceAddr
+        (select b.addr from care_house b where b.id = a.house_id) deviceAddr
         FROM care_device a
         FROM care_device a
         <where>
         <where>
             1 = 1
             1 = 1

+ 2 - 3
src/main/resources/mybatis/CareDeviceMapper.xml

@@ -5,9 +5,8 @@
     <select id="queryListByHouseId" resultType="com.care.common.vo.device.DeviceVO">
     <select id="queryListByHouseId" resultType="com.care.common.vo.device.DeviceVO">
         select
         select
             d.id as devId,
             d.id as devId,
-            r.dev_alias_name as devAliasName
+            d.dev_name as devName
         from care_device d
         from care_device d
-                 left join care_house_device_rel r on r.dev_id = d.id
-        where r.house_id = #{houseId}
+        where d.house_id = #{houseId}
     </select>
     </select>
 </mapper>
 </mapper>

+ 0 - 6
src/main/resources/mybatis/CareHouseDeviceRelMapper.xml

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.care.common.mapper.CareHouseDeviceRelMapper">
-   
-
-</mapper>