Explorar o código

事件结束 增加发送短信

suntianwu %!s(int64=3) %!d(string=hai) anos
pai
achega
52ef1a5c73

+ 1 - 0
src/main/java/com/care/bms/controller/EventHandleController.java

@@ -231,6 +231,7 @@ public class EventHandleController {
     @ApiOperation(tags = {"事件处理"},value = "完成工单")
     public Result<Object> complete(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("orderId") Long orderId){
         this.bmsEventOrderService.updateOrderStatus(orderId,OrderStatusEnum.COMPLETE);
+        this.bmsEventOrderService.sendSmsToMemberAndLianxiren(orderId,"工单完成");
         return  Result.success("操作成功!");
     }
 

+ 244 - 132
src/main/java/com/care/bms/service/BmsEventOrderService.java

@@ -55,6 +55,8 @@ public class BmsEventOrderService {
     @Resource
     private CareEventOrderHandleHisService careEventOrderHandleHisService;
     @Resource
+    private CareHandleLogService careHandleLogService;
+    @Resource
     private CareEventOrderKeyApplyService careEventOrderKeyApplyService;
     @Resource
     private CcCallResultService ccCallResultService;
@@ -68,32 +70,38 @@ public class BmsEventOrderService {
 
     @Resource
     private CareDeviceService careDeviceService;
+    @Resource
+    private CareMemberInfoService careMemberInfoService;
+
+    @Resource
+    private CareHouseContactService careHouseContactService;
 
     /**
      * 工单查询
+     *
      * @param orderStatus
      * @param olderName
      * @param loginUser
      * @param pageReqVo
      * @return
      */
-    public IPage<EventOrderVO> listEvent(String orderStatus,String title, String olderName, UserLogindConvertVO loginUser, PageReqVO pageReqVo) {
+    public IPage<EventOrderVO> listEvent(String orderStatus, String title, String olderName, UserLogindConvertVO loginUser, PageReqVO pageReqVo) {
         IPage<CareEventOrder> page = new Page<>(pageReqVo.getCurrent(), pageReqVo.getPageSize());
         QueryWrapper<CareEventOrder> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus),CareEventOrder::getStatus, orderStatus)
-                .like(StrUtil.isNotEmpty(title),CareEventOrder::getTitle,title)
-                .like(StrUtil.isNotEmpty(olderName),CareEventOrder::getOlderName,olderName)
-                .eq(CareEventOrder::getOrgId,loginUser.getOrgId())
-                .eq(loginUser.getStationId()!=null,CareEventOrder::getStationId,loginUser.getStationId())
+        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus), CareEventOrder::getStatus, orderStatus)
+                .like(StrUtil.isNotEmpty(title), CareEventOrder::getTitle, title)
+                .like(StrUtil.isNotEmpty(olderName), CareEventOrder::getOlderName, olderName)
+                .eq(CareEventOrder::getOrgId, loginUser.getOrgId())
+                .eq(loginUser.getStationId() != null, CareEventOrder::getStationId, loginUser.getStationId())
                 .orderByDesc(CareEventOrder::getCreateTime);
 
         IPage<CareEventOrder> pageRes = this.careEventOrderService.page(page, queryWrapper);
-        IPage<EventOrderVO> results = new Page<>(pageRes.getCurrent(),pageRes.getSize(),pageRes.getTotal());
-        if(CollUtil.isNotEmpty(pageRes.getRecords())){
+        IPage<EventOrderVO> results = new Page<>(pageRes.getCurrent(), pageRes.getSize(), pageRes.getTotal());
+        if (CollUtil.isNotEmpty(pageRes.getRecords())) {
             List<EventOrderVO> list = new ArrayList<>();
             pageRes.getRecords().forEach(item -> {
-                EventOrderVO  resVO = new EventOrderVO();
-                BeanUtils.copyProperties(item,resVO);
+                EventOrderVO resVO = new EventOrderVO();
+                BeanUtils.copyProperties(item, resVO);
                 resVO.setOrderTypeName(OrderTypeEnum.getCodeToName(item.getOrderType()));
                 resVO.setStatusName(OrderStatusEnum.getCodeToName(item.getStatus()));
                 list.add(resVO);
@@ -102,8 +110,10 @@ public class BmsEventOrderService {
         }
         return results;
     }
+
     /**
      * 工单查询
+     *
      * @param orderStatus
      * @param olderName
      * @param loginUser
@@ -111,19 +121,19 @@ public class BmsEventOrderService {
      */
     public List<EventOrderVO> listTodoOrder(String orderStatus, String olderName, UserLogindConvertVO loginUser) {
         QueryWrapper<CareEventOrder> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus),CareEventOrder::getStatus, orderStatus)
-                .like(StrUtil.isNotEmpty(olderName),CareEventOrder::getOlderName,olderName)
-                .eq(CareEventOrder::getOrgId,loginUser.getOrgId())
-                .eq(loginUser.getStationId()!=null,CareEventOrder::getStationId,loginUser.getStationId())
+        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus), CareEventOrder::getStatus, orderStatus)
+                .like(StrUtil.isNotEmpty(olderName), CareEventOrder::getOlderName, olderName)
+                .eq(CareEventOrder::getOrgId, loginUser.getOrgId())
+                .eq(loginUser.getStationId() != null, CareEventOrder::getStationId, loginUser.getStationId())
                 //.last("limit 100")
                 .orderByAsc(CareEventOrder::getCreateTime);
 
         List<CareEventOrder> datas = this.careEventOrderService.list(queryWrapper);
         List<EventOrderVO> results = Lists.newArrayList();
-        if(CollUtil.isNotEmpty(datas)){
+        if (CollUtil.isNotEmpty(datas)) {
             datas.forEach(item -> {
-                EventOrderVO  resVO = new EventOrderVO();
-                BeanUtils.copyProperties(item,resVO);
+                EventOrderVO resVO = new EventOrderVO();
+                BeanUtils.copyProperties(item, resVO);
                 resVO.setOrderTypeName(OrderTypeEnum.getCodeToName(item.getOrderType()));
                 resVO.setStatusName(OrderStatusEnum.getCodeToName(item.getStatus()));
                 results.add(resVO);
@@ -131,9 +141,10 @@ public class BmsEventOrderService {
         }
         return results;
     }
+
     /**
-     *
      * 工单数量查询
+     *
      * @param orderStatus
      * @param olderName
      * @param loginUser
@@ -141,10 +152,10 @@ public class BmsEventOrderService {
      */
     public Integer getTodoOrderCount(String orderStatus, String olderName, UserLogindConvertVO loginUser) {
         QueryWrapper<CareEventOrder> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus),CareEventOrder::getStatus, orderStatus)
-                .like(StrUtil.isNotEmpty(olderName),CareEventOrder::getOlderName,olderName)
-                .eq(CareEventOrder::getOrgId,loginUser.getOrgId())
-                .eq(loginUser.getStationId()!=null,CareEventOrder::getStationId,loginUser.getStationId());
+        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus), CareEventOrder::getStatus, orderStatus)
+                .like(StrUtil.isNotEmpty(olderName), CareEventOrder::getOlderName, olderName)
+                .eq(CareEventOrder::getOrgId, loginUser.getOrgId())
+                .eq(loginUser.getStationId() != null, CareEventOrder::getStationId, loginUser.getStationId());
 
         int count = this.careEventOrderService.count(queryWrapper);
 
@@ -160,27 +171,27 @@ public class BmsEventOrderService {
      * @param pageReqVo
      * @return
      */
-    public IPage<EventOrderVO> listEvent4MyDo(String orderStatus,String title, String olderName, UserLogindConvertVO loginUser, PageReqVO pageReqVo) {
+    public IPage<EventOrderVO> listEvent4MyDo(String orderStatus, String title, String olderName, UserLogindConvertVO loginUser, PageReqVO pageReqVo) {
         IPage<CareEventOrder> page = new Page<>(pageReqVo.getCurrent(), pageReqVo.getPageSize());
         QueryWrapper<CareEventOrder> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus),CareEventOrder::getStatus, orderStatus)
-                .like(StrUtil.isNotEmpty(title),CareEventOrder::getTitle,title)
-                .like(StrUtil.isNotEmpty(olderName),CareEventOrder::getOlderName,olderName)
-                .eq(CareEventOrder::getOrgId,loginUser.getOrgId())
-                .eq(CareEventOrder::getSeatId,loginUser.getId())
+        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus), CareEventOrder::getStatus, orderStatus)
+                .like(StrUtil.isNotEmpty(title), CareEventOrder::getTitle, title)
+                .like(StrUtil.isNotEmpty(olderName), CareEventOrder::getOlderName, olderName)
+                .eq(CareEventOrder::getOrgId, loginUser.getOrgId())
+                .eq(CareEventOrder::getSeatId, loginUser.getId())
                 .orderByAsc(CareEventOrder::getCreateTime);
 
         IPage<CareEventOrder> pageRes = this.careEventOrderService.page(page, queryWrapper);
-        IPage<EventOrderVO> results = new Page<>(pageRes.getCurrent(),pageRes.getSize(),pageRes.getTotal());
-        if(CollUtil.isNotEmpty(pageRes.getRecords())){
+        IPage<EventOrderVO> results = new Page<>(pageRes.getCurrent(), pageRes.getSize(), pageRes.getTotal());
+        if (CollUtil.isNotEmpty(pageRes.getRecords())) {
             List<EventOrderVO> list = new ArrayList<>();
             pageRes.getRecords().forEach(item -> {
-                EventOrderVO  resVO = new EventOrderVO();
-                BeanUtils.copyProperties(item,resVO);
+                EventOrderVO resVO = new EventOrderVO();
+                BeanUtils.copyProperties(item, resVO);
                 resVO.setOrderTypeName(OrderTypeEnum.getCodeToName(item.getOrderType()));
                 resVO.setStatusName(OrderStatusEnum.getCodeToName(item.getStatus()));
                 QueryWrapper<CareEventOrderHandleHis> queryWrapper2 = new QueryWrapper<>();
-                queryWrapper2.lambda().eq(CareEventOrderHandleHis::getOrderId,item.getId()).eq(CareEventOrderHandleHis::getLogType,LogTypeEnum.DEV_EVENT.getValue());
+                queryWrapper2.lambda().eq(CareEventOrderHandleHis::getOrderId, item.getId()).eq(CareEventOrderHandleHis::getLogType, LogTypeEnum.DEV_EVENT.getValue());
                 resVO.setWarnCount(careEventOrderHandleHisService.count(queryWrapper2));
                 list.add(resVO);
             });
@@ -198,41 +209,42 @@ public class BmsEventOrderService {
     public List<OrderHandleHisVO> listHisWarn(Long orderId) {
         CareEventOrder order = this.careEventOrderService.getById(orderId);
         QueryWrapper<CareEventOrderHandleHis> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(CareEventOrderHandleHis::getOrderId,order.getId()).eq(CareEventOrderHandleHis::getLogType,LogTypeEnum.DEV_EVENT.getValue()).orderByDesc(CareEventOrderHandleHis::getCreateTime);
+        queryWrapper.lambda().eq(CareEventOrderHandleHis::getOrderId, order.getId()).eq(CareEventOrderHandleHis::getLogType, LogTypeEnum.DEV_EVENT.getValue()).orderByDesc(CareEventOrderHandleHis::getCreateTime);
         List<CareEventOrderHandleHis> list = careEventOrderHandleHisService.list(queryWrapper);
         List<OrderHandleHisVO> listHisWarn = new ArrayList<>();
-       if(CollUtil.isNotEmpty(list)){
-           list.forEach(item -> {
-               OrderHandleHisVO vo = new OrderHandleHisVO();
-               BeanUtil.copyProperties(item,vo);
-               vo.setOrderTypeName(OrderTypeEnum.getCodeToName(vo.getOrderType()));
-               listHisWarn.add(vo);
-           });
-       }
+        if (CollUtil.isNotEmpty(list)) {
+            list.forEach(item -> {
+                OrderHandleHisVO vo = new OrderHandleHisVO();
+                BeanUtil.copyProperties(item, vo);
+                vo.setOrderTypeName(OrderTypeEnum.getCodeToName(vo.getOrderType()));
+                listHisWarn.add(vo);
+            });
+        }
         return listHisWarn;
     }
 
 
     /**
      * 近期事件查询
+     *
      * @param orderStatus
      * @param loginUser
      * @return
      */
     public List<EventOrderVO> listRecentHandle(String orderStatus, UserLogindConvertVO loginUser) {
         QueryWrapper<CareEventOrder> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus),CareEventOrder::getStatus, orderStatus)
-                .eq(CareEventOrder::getOrgId,loginUser.getOrgId())
-                .eq(loginUser.getStationId()!=null,CareEventOrder::getStationId,loginUser.getStationId())
-                .eq(CareEventOrder::getSeatId,loginUser.getId())
+        queryWrapper.lambda().eq(StrUtil.isNotEmpty(orderStatus), CareEventOrder::getStatus, orderStatus)
+                .eq(CareEventOrder::getOrgId, loginUser.getOrgId())
+                .eq(loginUser.getStationId() != null, CareEventOrder::getStationId, loginUser.getStationId())
+                .eq(CareEventOrder::getSeatId, loginUser.getId())
                 .orderByAsc(CareEventOrder::getCreateTime);
 
         List<CareEventOrder> datas = this.careEventOrderService.list(queryWrapper);
         List<EventOrderVO> results = Lists.newArrayList();
-        if(CollUtil.isNotEmpty(datas)){
+        if (CollUtil.isNotEmpty(datas)) {
             datas.forEach(item -> {
-                EventOrderVO  resVO = new EventOrderVO();
-                BeanUtils.copyProperties(item,resVO);
+                EventOrderVO resVO = new EventOrderVO();
+                BeanUtils.copyProperties(item, resVO);
                 resVO.setOrderTypeName(OrderTypeEnum.getCodeToName(item.getOrderType()));
                 resVO.setStatusName(OrderStatusEnum.getCodeToName(item.getStatus()));
                 results.add(resVO);
@@ -249,60 +261,60 @@ public class BmsEventOrderService {
      * @param loginUser
      */
     public void receiveOrder(Long orderId, UserLogindConvertVO loginUser) {
-        String key = RedisKeyConstant.DO_ORDER+":"+orderId;
-        boolean result = redisUtil.tryLock(key,3000);
-        try{
-            if (result){
+        String key = RedisKeyConstant.DO_ORDER + ":" + orderId;
+        boolean result = redisUtil.tryLock(key, 3000);
+        try {
+            if (result) {
                 CareEventOrder order = this.careEventOrderService.getById(orderId);
                 //1.判断工单的状态,如果不是未处理状态,则不能处理
-                if (OrderStatusEnum.TODO.getValue().equals(order.getStatus())){
+                if (OrderStatusEnum.TODO.getValue().equals(order.getStatus())) {
                     UpdateWrapper<CareEventOrder> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper.lambda().eq(CareEventOrder::getId,orderId)
-                            .set(CareEventOrder::getStatus,OrderStatusEnum.DOING.getValue())
-                            .set(CareEventOrder::getSeatId,loginUser.getId())
-                            .set(CareEventOrder::getSeatName,loginUser.getName())
-                            .set(CareEventOrder::getModifyTime,DateUtil.date());
+                    updateWrapper.lambda().eq(CareEventOrder::getId, orderId)
+                            .set(CareEventOrder::getStatus, OrderStatusEnum.DOING.getValue())
+                            .set(CareEventOrder::getSeatId, loginUser.getId())
+                            .set(CareEventOrder::getSeatName, loginUser.getName())
+                            .set(CareEventOrder::getModifyTime, DateUtil.date());
                     this.careEventOrderService.update(updateWrapper);
-                }else{
-                    throw  new BDException("该工单状态已变化,请刷新");
+                } else {
+                    throw new BDException("该工单状态已变化,请刷新");
                 }
 
-            }else {
-                throw  new BDException("该工单已经再被处理");
+            } else {
+                throw new BDException("该工单已经再被处理");
             }
-        }finally {
+        } finally {
             redisUtil.releaseLock(key);
         }
     }
 
     /**
-     *
      * @param orderId
      * @return
      */
-    public EventOrderVO getOrderInfo(Long orderId){
+    public EventOrderVO getOrderInfo(Long orderId) {
         EventOrderVO eventOrderVO = null;
         CareEventOrder order = this.careEventOrderService.getById(orderId);
-        if (order!=null){
-            eventOrderVO  = new EventOrderVO();
-            BeanUtil.copyProperties(order,eventOrderVO);
+        if (order != null) {
+            eventOrderVO = new EventOrderVO();
+            BeanUtil.copyProperties(order, eventOrderVO);
             eventOrderVO.setStatusName(OrderStatusEnum.getCodeToName(eventOrderVO.getStatus()));
             eventOrderVO.setOrderTypeName(OrderTypeEnum.getCodeToName(eventOrderVO.getOrderType()));
             CareHouse house = this.careHouseService.getById(order.getHouseId());
             CareHouseVO houseVO = new CareHouseVO();
-            BeanUtil.copyProperties(house,houseVO);
+            BeanUtil.copyProperties(house, houseVO);
             //houseVO.setRelationTypeDesc("屋主");
             eventOrderVO.setHouse(houseVO);
         }
-        return  eventOrderVO;
+        return eventOrderVO;
     }
 
     /**
      * 主管家改派管家列表查询
+     *
      * @param orderId
      * @return
      */
-    public List<ChamberlainVO>  queryChambList(Long orderId){
+    public List<ChamberlainVO> queryChambList(Long orderId) {
         List<ChamberlainVO> chambList = new ArrayList<>();
 
         ChamberlainVO mainVO = null;
@@ -310,30 +322,30 @@ public class BmsEventOrderService {
 
         CareEventOrder order = this.careEventOrderService.getById(orderId);
         CareDevice dev = this.careDeviceService.getById(order.getDevId());
-        if(dev != null){
+        if (dev != null) {
             CareSysUser careSysUser = this.careSysUserService.getById(dev.getChambId());
             if (careSysUser != null) {
                 mainVO = new ChamberlainVO();
-                BeanUtil.copyProperties(careSysUser,mainVO);
+                BeanUtil.copyProperties(careSysUser, mainVO);
                 mainVO.setIsMain(TrueFalseEnum.TRUE.getValue());
                 mainVO.setStatusDesc(ChambStatusEnum.getCodeToName(mainVO.getStatus()));
             }
         }
         CareEventOrderChamb careEventOrderChamb = this.careEventOrderChambService.getChambOrderByOrderId(orderId);
-        if(careEventOrderChamb != null) {
+        if (careEventOrderChamb != null) {
             CareSysUser careSysUser = this.careSysUserService.getById(careEventOrderChamb.getChambId());
-            if(careSysUser != null){
+            if (careSysUser != null) {
                 assignVO = new ChamberlainVO();
-                BeanUtil.copyProperties(careSysUser,assignVO);
+                BeanUtil.copyProperties(careSysUser, assignVO);
                 assignVO.setIsMain(TrueFalseEnum.FALSE.getValue());
                 assignVO.setStatusDesc(ChambStatusEnum.getCodeToName(mainVO.getStatus()));
             }
         }
 
         if (mainVO != null && assignVO != null) {
-            if(mainVO.getId().equals(assignVO.getId())){ //没有指派管家
-                if(ChambStatusEnum.BUSY.getValue().equals(mainVO.getStatus())){ //主状态是忙碌时拆分子状态
-                    if(ChambOrderStatusEnum.DOING.getValue().equals(careEventOrderChamb.getStatus())){
+            if (mainVO.getId().equals(assignVO.getId())) { //没有指派管家
+                if (ChambStatusEnum.BUSY.getValue().equals(mainVO.getStatus())) { //主状态是忙碌时拆分子状态
+                    if (ChambOrderStatusEnum.DOING.getValue().equals(careEventOrderChamb.getStatus())) {
                         mainVO.setSubStatus(ChambSubStatusEnum.DOING.getValue());//处理中
                     } else {
                         mainVO.setSubStatus(ChambSubStatusEnum.BUSY.getValue());//忙碌
@@ -343,13 +355,13 @@ public class BmsEventOrderService {
                 }
                 mainVO.setSubStatusDesc(ChambSubStatusEnum.getCodeToName(mainVO.getSubStatus()));
                 chambList.add(mainVO);
-            } else{ //指派了管家
+            } else { //指派了管家
                 //设置主管家子状态和主状态相同:空闲、休假、忙碌
                 mainVO.setSubStatus(mainVO.getStatus());
 
                 //设置指派管家状态
-                if(ChambStatusEnum.BUSY.getValue().equals(assignVO.getStatus())) { //指派管家的主状态是忙碌时拆分子状态
-                    if(ChambOrderStatusEnum.DOING.getValue().equals(careEventOrderChamb.getStatus())){
+                if (ChambStatusEnum.BUSY.getValue().equals(assignVO.getStatus())) { //指派管家的主状态是忙碌时拆分子状态
+                    if (ChambOrderStatusEnum.DOING.getValue().equals(careEventOrderChamb.getStatus())) {
                         assignVO.setSubStatus(ChambSubStatusEnum.DOING.getValue());//处理中
                     } else {
                         assignVO.setSubStatus(ChambSubStatusEnum.BUSY.getValue());//忙碌
@@ -362,10 +374,10 @@ public class BmsEventOrderService {
                 assignVO.setSubStatusDesc(ChambSubStatusEnum.getCodeToName(assignVO.getSubStatus()));
                 chambList.add(assignVO);
             }
-        } else if(mainVO == null && assignVO != null) {
+        } else if (mainVO == null && assignVO != null) {
             //设置指派管家状态
-            if(ChambStatusEnum.BUSY.getValue().equals(assignVO.getStatus())) { //指派管家的主状态是忙碌时拆分子状态
-                if(ChambOrderStatusEnum.DOING.getValue().equals(careEventOrderChamb.getStatus())){
+            if (ChambStatusEnum.BUSY.getValue().equals(assignVO.getStatus())) { //指派管家的主状态是忙碌时拆分子状态
+                if (ChambOrderStatusEnum.DOING.getValue().equals(careEventOrderChamb.getStatus())) {
                     assignVO.setSubStatus(ChambSubStatusEnum.DOING.getValue());//处理中
                 } else {
                     assignVO.setSubStatus(ChambSubStatusEnum.BUSY.getValue());//忙碌
@@ -383,16 +395,17 @@ public class BmsEventOrderService {
 
     /**
      * 查询老人列表
+     *
      * @param orderId
      * @return
      */
-    public List<OrderOlderVO>  queryOrderOlderList(Long orderId){
+    public List<OrderOlderVO> queryOrderOlderList(Long orderId) {
         List<OrderOlderVO> orderOlderVOList = Lists.newArrayList();
 //        CareEventOrder order = this.careEventOrderService.getById(orderId);
         QueryWrapper<CareEventOrderOlder> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(CareEventOrderOlder::getOrderId,orderId);
-        List<CareEventOrderOlder> ceoos  = this.careEventOrderOlderService.list(queryWrapper);
-        if (CollUtil.isNotEmpty(ceoos)){
+        queryWrapper.lambda().eq(CareEventOrderOlder::getOrderId, orderId);
+        List<CareEventOrderOlder> ceoos = this.careEventOrderOlderService.list(queryWrapper);
+        if (CollUtil.isNotEmpty(ceoos)) {
 //            ChamberlainVO chamberlainVO = new ChamberlainVO();
 //            CareHouse house = this.careHouseService.getById(order.getHouseId());
 //            if (house!=null){
@@ -401,9 +414,9 @@ public class BmsEventOrderService {
 //                    BeanUtil.copyProperties(user,chamberlainVO);
 //                }
 //            }
-            ceoos.forEach(item->{
+            ceoos.forEach(item -> {
                 OrderOlderVO orderOlderVO = new OrderOlderVO();
-                BeanUtil.copyProperties(item,orderOlderVO);
+                BeanUtil.copyProperties(item, orderOlderVO);
                 orderOlderVO.setStatusDesc(OrderOlderStatusEnum.getCodeToName(orderOlderVO.getStatus()));
                 //orderOlderVO.setChamberlain(chamberlainVO);
                 orderOlderVOList.add(orderOlderVO);
@@ -415,23 +428,24 @@ public class BmsEventOrderService {
 
     /**
      * 查询事件处理历史
+     *
      * @param orderId
      * @return
      */
-    public List<OrderHandleHisVO> queryOrderHandleHis(Long orderId){
+    public List<OrderHandleHisVO> queryOrderHandleHis(Long orderId) {
         List<OrderHandleHisVO> result = Lists.newArrayList();
         QueryWrapper<CareEventOrderHandleHis> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(CareEventOrderHandleHis::getOrderId,orderId)
+        queryWrapper.lambda().eq(CareEventOrderHandleHis::getOrderId, orderId)
                 .orderByDesc(CareEventOrderHandleHis::getCreateTime);
         List<CareEventOrderHandleHis> datas = this.careEventOrderHandleHisService.list(queryWrapper);
-        if (CollUtil.isNotEmpty(datas)){
-            datas.forEach(item ->{
+        if (CollUtil.isNotEmpty(datas)) {
+            datas.forEach(item -> {
                 OrderHandleHisVO hisVO = new OrderHandleHisVO();
-                BeanUtil.copyProperties(item,hisVO);
+                BeanUtil.copyProperties(item, hisVO);
                 hisVO.setHasAudioUrl(false);
-                if(hisVO.getCallResultId() != null){
+                if (hisVO.getCallResultId() != null) {
                     CcCallResultVO callResultVO = this.ccCallResultService.getCallResult(hisVO.getCallResultId());
-                    if (StrUtil.isNotEmpty(callResultVO.getAudioUrl())){
+                    if (StrUtil.isNotEmpty(callResultVO.getAudioUrl())) {
                         hisVO.setHasAudioUrl(true);
                     }
                 }
@@ -442,72 +456,76 @@ public class BmsEventOrderService {
     }
 
     /**
-     *  查询工单的相关联系人
+     * 查询工单的相关联系人
+     *
      * @param orderId
      * @return
      */
-    public List<OrderContactorVO> queryContactList(Long orderId){
+    public List<OrderContactorVO> queryContactList(Long orderId) {
         List<OrderContactorVO> result = Lists.newArrayList();
         QueryWrapper<CareEventOrderContactStatus> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(CareEventOrderContactStatus::getOrderId,orderId).orderByAsc(CareEventOrderContactStatus::getContactLevel);
+        queryWrapper.lambda().eq(CareEventOrderContactStatus::getOrderId, orderId).orderByAsc(CareEventOrderContactStatus::getContactLevel);
         List<CareEventOrderContactStatus> ceocs = this.careEventOrderContactStatusService.list(queryWrapper);
-        if (CollUtil.isNotEmpty(ceocs)){
+        if (CollUtil.isNotEmpty(ceocs)) {
             ceocs.forEach(item -> {
                 OrderContactorVO contactorVO = new OrderContactorVO();
-                BeanUtil.copyProperties(item,contactorVO);
+                BeanUtil.copyProperties(item, contactorVO);
                 contactorVO.setStatusDesc(ContactorStatusEnum.getCodeToName(item.getStatus()));
                 result.add(contactorVO);
             });
         }
-        return  result;
+        return result;
     }
 
     /**
      * 更新工单状态
+     *
      * @param orderId
      * @param orderStatusEnum
      */
-    public void updateOrderStatus(Long orderId,OrderStatusEnum orderStatusEnum){
+    public void updateOrderStatus(Long orderId, OrderStatusEnum orderStatusEnum) {
         CareEventOrder order = this.careEventOrderService.getById(orderId);
         UpdateWrapper<CareEventOrder> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.lambda().eq(CareEventOrder::getId,orderId)
-                .set(CareEventOrder::getStatus,orderStatusEnum.getValue())
-                .set(CareEventOrder::getModifyTime,DateUtil.date());
+        updateWrapper.lambda().eq(CareEventOrder::getId, orderId)
+                .set(CareEventOrder::getStatus, orderStatusEnum.getValue())
+                .set(CareEventOrder::getModifyTime, DateUtil.date());
         this.careEventOrderService.update(updateWrapper);
-        this.bigScreenService.pushRtEventFlag(order.getOrgId(),order.getStationId(),orderId.toString(),"bigscreenRefresh");
+        this.bigScreenService.pushRtEventFlag(order.getOrgId(), order.getStationId(), orderId.toString(), "bigscreenRefresh");
     }
 
     /**
      * 获取钥匙请求历史
+     *
      * @param orderId
      * @return
      */
-    public  List<OrderKeyApplyVO> queryKeyAuthList(Long orderId){
+    public List<OrderKeyApplyVO> queryKeyAuthList(Long orderId) {
         List<OrderKeyApplyVO> result = Lists.newArrayList();
         QueryWrapper<CareEventOrderKeyApply> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(CareEventOrderKeyApply::getOrderId,orderId).orderByDesc(CareEventOrderKeyApply::getCreateTime);
+        queryWrapper.lambda().eq(CareEventOrderKeyApply::getOrderId, orderId).orderByDesc(CareEventOrderKeyApply::getCreateTime);
         List<CareEventOrderKeyApply> ceocs = this.careEventOrderKeyApplyService.list(queryWrapper);
-        if (CollUtil.isNotEmpty(ceocs)){
+        if (CollUtil.isNotEmpty(ceocs)) {
             ceocs.forEach(item -> {
                 OrderKeyApplyVO keyApplyVO = new OrderKeyApplyVO();
-                BeanUtil.copyProperties(item,keyApplyVO);
+                BeanUtil.copyProperties(item, keyApplyVO);
                 result.add(keyApplyVO);
             });
         }
-        return  result;
+        return result;
     }
 
     /**
      * 钥匙授权
+     *
      * @param applyId
      * @return
      */
-    public boolean keyAuth(Long applyId ,UserLogindConvertVO loginUser){
+    public boolean keyAuth(Long applyId, UserLogindConvertVO loginUser) {
         CareEventOrderKeyApply apply = this.careEventOrderKeyApplyService.getById(applyId);
         UpdateWrapper<CareEventOrderKeyApply> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.lambda().eq(CareEventOrderKeyApply::getId,applyId)
-                .set(CareEventOrderKeyApply::getKeyPass,RandomUtil.randomNumbers(6))
-                .set(CareEventOrderKeyApply::getStatus,KeyAuthEnum.AUTHED.getValue());
+        updateWrapper.lambda().eq(CareEventOrderKeyApply::getId, applyId)
+                .set(CareEventOrderKeyApply::getKeyPass, RandomUtil.randomNumbers(6))
+                .set(CareEventOrderKeyApply::getStatus, KeyAuthEnum.AUTHED.getValue());
         CareEventOrderHandleHis his = new CareEventOrderHandleHis();
         his.setOrgId(apply.getOrgId());
         his.setStationId(apply.getStationId());
@@ -522,20 +540,21 @@ public class BmsEventOrderService {
         his.setCreateTime(DateUtil.date());
         his.setRelationTypeDesc(apply.getRelationTypeDesc());
         this.careEventOrderHandleHisService.save(his);
-        return  this.careEventOrderKeyApplyService.update(updateWrapper);
+        return this.careEventOrderKeyApplyService.update(updateWrapper);
     }
 
     /**
      * 修改联系人状态
+     *
      * @param orderContactId
      * @param status
      * @return
      */
-    public boolean updateOrderContactStatus(Long orderContactId,Integer status,UserLogindConvertVO loginUser){
+    public boolean updateOrderContactStatus(Long orderContactId, Integer status, UserLogindConvertVO loginUser) {
         CareEventOrderContactStatus contact = this.careEventOrderContactStatusService.getById(orderContactId);
         UpdateWrapper<CareEventOrderContactStatus> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.lambda().eq(CareEventOrderContactStatus::getId,orderContactId)
-                .set(CareEventOrderContactStatus::getStatus,status);
+        updateWrapper.lambda().eq(CareEventOrderContactStatus::getId, orderContactId)
+                .set(CareEventOrderContactStatus::getStatus, status);
 
         CareEventOrderHandleHis his = new CareEventOrderHandleHis();
         his.setOrgId(contact.getOrgId());
@@ -551,23 +570,25 @@ public class BmsEventOrderService {
         his.setCreateTime(DateUtil.date());
         his.setRelationTypeDesc(contact.getRelationTypeDesc());
         this.careEventOrderHandleHisService.save(his);
-        return  this.careEventOrderContactStatusService.update(updateWrapper);
+        return this.careEventOrderContactStatusService.update(updateWrapper);
     }
 
     /**
      * 获取通话结果
+     *
      * @param hisId
      */
-    public CcCallResultVO getCallRadio(Long hisId){
+    public CcCallResultVO getCallRadio(Long hisId) {
         CareEventOrderHandleHis his = this.careEventOrderHandleHisService.getById(hisId);
-        if (his.getCallResultId()!= null){
+        if (his.getCallResultId() != null) {
             return this.ccCallResultService.getCallResult(his.getCallResultId());
-        }else {
+        } else {
             return null;
         }
 
     }
-    public void insertTestData(){
+
+    public void insertTestData() {
         List<CareHouse> houses = Lists.newArrayList();
         CareHouse house = new CareHouse();
         house.setId(1L);
@@ -585,7 +606,7 @@ public class BmsEventOrderService {
         order.setDevName("卧室");
         order.setHouseName(house.getName());
         order.setTitle(house.getAddr() + house.getHouseNumber());
-        order.setOrderType(OrderTypeEnum.values()[RandomUtil.randomInt(0,4)].getValue());
+        order.setOrderType(OrderTypeEnum.values()[RandomUtil.randomInt(0, 4)].getValue());
         order.setStatus("0");
         order.setCreateTime(DateUtil.date());
         order.setModifyTime(DateUtil.date());
@@ -593,9 +614,100 @@ public class BmsEventOrderService {
         this.careEventOrderService.saveOrder(order);
     }
 
+    /**
+     * 给用户和联系人发送工单完成短信
+     *
+     * @param orderId
+     * @return
+     */
+    public void sendSmsToMemberAndLianxiren(Long orderId, String content) {
+        CareEventOrder order = this.careEventOrderService.getById(orderId);
+        if (order == null) {
+            return;
+        }
+        CareHouse house = this.careHouseService.getById(order.getHouseId());
+        if (house == null){
+            return;
+        }
+        sendSmsToMember(order,house,content);
+        sendSmsToLianxirenList(order,house,content);
+    }
+
+    /**
+     * 给用户发送工单完成短信
+     *
+     * @param order
+     * @return
+     */
+    private void sendSmsToMember(CareEventOrder order,CareHouse house, String content) {
+        if (order.getMemberId() == null || order.getMemberId() == 0L) {
+            return;
+        }
+        CareMemberInfo careMemberInfo = this.careMemberInfoService.getById(order.getMemberId());
+        if (careMemberInfo == null) {
+            return;
+        }
+
+        boolean smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.ORDER_COMPLETE, careMemberInfo.getPhone(), house.getName());
+        if (smsResult) {
+            CareHandleLog log = new CareHandleLog();
+            log.setOrgId(order.getOrgId());
+            log.setStationId(order.getStationId());
+            log.setOrderId(order.getId());
+            log.setLogType(LogTypeEnum.SMS.getValue());
+            log.setLogObjectId(order.getMemberId());
+            log.setLogObjectName(careMemberInfo.getName());
+            log.setLogResult("短信通知");
+            log.setLogContent(content);
+            log.setOpUserRole(UserRoleEnum.SEAT.getValue());
+            log.setCreateTime(DateUtil.date());
+            log.setRelationTypeDesc("用户");
+            this.careHandleLogService.save(log);
+        }
+    }
+
+    /**
+     * 给所有联系人发送工单完成短信
+     *
+     * @param order
+     * @return
+     */
+    private void sendSmsToLianxirenList(CareEventOrder order, CareHouse house, String content) {
+        List<OrderContactorVO> orderContactorVOList = queryContactList(order.getId());
+        if (CollUtil.isEmpty(orderContactorVOList)) {
+          return;
+        }
+
+        for(OrderContactorVO orderContactorVO : orderContactorVOList) {
+            CareHouseContact careHouseContact = this.careHouseContactService.getById(orderContactorVO.getContactId());
+            if (careHouseContact == null) {
+                continue;
+            }
+
+            boolean smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.ORDER_COMPLETE, orderContactorVO.getContactPhone(), house.getName());
+
+            if (smsResult) {
+                CareHandleLog log = new CareHandleLog();
+                log.setOrgId(order.getOrgId());
+                log.setStationId(order.getStationId());
+                log.setOrderId(order.getId());
+                log.setLogType(LogTypeEnum.SMS.getValue());
+                log.setLogObjectId(order.getMemberId());
+                log.setLogObjectName(orderContactorVO.getContactName());
+                log.setLogResult("短信通知");
+                log.setLogContent(content);
+                log.setOpUserRole(UserRoleEnum.SEAT.getValue());
+                log.setCreateTime(DateUtil.date());
+                log.setRelationTypeDesc("联系人");
+                this.careHandleLogService.save(log);
+            }
+        }
+
+    }
+
 
     /**
-     * 发送短信接口
+     * 给联系人发送短信
      * @param orderContactId
      * @return
      */
@@ -607,9 +719,9 @@ public class BmsEventOrderService {
             CareHouse house = this.careHouseService.getById(contactStatus.getHouseId());
             boolean smsResult = false;
             if (OrderTypeEnum.JIU_ZHI.getValue().equals(order.getOrderType())){
-                 smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.JIU_ZHI,contactStatus.getContactPhone(),house.getName());
+                 smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.JIU_ZHI,contactStatus.getContactPhone(),house.getName());
             }else if(OrderTypeEnum.DIE_DAO.getValue().equals(order.getOrderType())){
-                 smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.DIE_DAO,contactStatus.getContactPhone(),house.getName());
+                 smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.DIE_DAO,contactStatus.getContactPhone(),house.getName());
             }
             if (smsResult){
                 CareEventOrderHandleHis his = new CareEventOrderHandleHis();

+ 116 - 0
src/main/java/com/care/common/entity/CareHandleLog.java

@@ -0,0 +1,116 @@
+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;
+import java.util.Date;
+
+/**
+ * 处理日志(CareHandleLog)实体类
+ *
+ * @author makejava
+ * @since 2021-06-02 21:42:17
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("care_handle_log")
+@ApiModel(value = "处理日志", description = "")
+public class CareHandleLog implements Serializable {
+    private static final long serialVersionUID = 808847334145669603L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("机构ID")
+    @TableField("ORG_ID")
+    private Long orgId;
+
+
+    @ApiModelProperty("服务站ID")
+    @TableField("STATION_ID")
+    private Long stationId;
+
+
+    @ApiModelProperty(" 房屋ID")
+    @TableField("HOUSE_ID")
+    private Long houseId;
+
+
+    @ApiModelProperty("工单ID")
+    @TableField("ORDER_ID")
+    private Long orderId;
+
+
+    @ApiModelProperty("日志类型:0: 老人事件  1:联系老人 2:联系紧急联系人 3联系管家 4联系120  5钥匙申请 6钥匙授权 7管家到达打卡 8管家归还钥匙 9管家离开打卡 10上报处理结果")
+    @TableField("LOG_TYPE")
+    private Integer logType;
+
+    @ApiModelProperty("工单分类: 21:跌倒 22:久滞 23坠床 31主动呼叫")
+    @TableField("ORDER_TYPE")
+    private String orderType;
+
+    @ApiModelProperty("操作对象")
+    @TableField("LOG_OBJECT_ID")
+    private Long logObjectId;
+
+
+    @ApiModelProperty("操作对象")
+    @TableField("LOG_OBJECT_NAME")
+    private String logObjectName;
+
+
+    @ApiModelProperty("操作结果")
+    @TableField("LOG_RESULT")
+    private String logResult;
+
+    @ApiModelProperty("日志内容")
+    @TableField("LOG_CONTENT")
+    private String logContent;
+
+    @ApiModelProperty("chanmb管家 contact紧联系人")
+    @TableField("OP_USER_ROLE")
+    private String opUserRole;
+
+
+    @ApiModelProperty("处理人ID")
+    @TableField("OP_USER_ID")
+    private Long opUserId;
+
+
+    @ApiModelProperty("处理人姓名")
+    @TableField("OP_USER_NAME")
+    private String opUserName;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+    @ApiModelProperty("关系类别")
+    @TableField("RELATION_TYPE_DESC")
+    private String relationTypeDesc;
+
+
+    @ApiModelProperty("呼叫结果ID")
+    @TableField("CALL_RESULT_ID")
+    private Long callResultId;
+
+
+}

+ 4 - 1
src/main/java/com/care/common/enums/SmsTemplateTypeEnum.java

@@ -15,7 +15,8 @@ public enum SmsTemplateTypeEnum {
     DIE_DAO("DIE_DAO","跌倒"),
     JIU_ZHI("JIU_ZHI","久滞"),
     CANCEL_DIEDAO("CANCEL_DIEDAO","取消跌倒"),
-    CANCEL_JIUZHI("CANCEL_JIUZHI","取消久滞");
+    CANCEL_JIUZHI("CANCEL_JIUZHI","取消久滞"),
+    ORDER_COMPLETE("ORDER_COMPLETE","工单完成");
     private String value;
     private String name;
     SmsTemplateTypeEnum(String value, String name) {
@@ -38,6 +39,8 @@ public enum SmsTemplateTypeEnum {
             return CANCEL_DIEDAO.name;
         }else if (CANCEL_JIUZHI.getValue().equals(code)){
             return CANCEL_JIUZHI.name;
+        }else if (ORDER_COMPLETE.getValue().equals(code)){
+            return ORDER_COMPLETE.name;
         }
         return null;
     }

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

@@ -0,0 +1,15 @@
+package com.care.common.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.care.common.entity.CareHandleLog;
+
+
+/**
+ * 处理日志(CareHandleLog)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-05-21 00:08:34
+ */
+public interface CareHandleLogMapper extends BaseMapper<CareHandleLog> {
+
+}

+ 15 - 0
src/main/java/com/care/common/service/CareHandleLogService.java

@@ -0,0 +1,15 @@
+package com.care.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.care.common.entity.CareEventOrderHandleHis;
+import com.care.common.entity.CareHandleLog;
+
+/**
+ * 处理日志(CareHandleLog)表服务接口
+ *
+ * @author makejava
+ * @since 2021-05-21 00:08:35
+ */
+public interface CareHandleLogService extends IService<CareHandleLog> {
+
+}

+ 3 - 9
src/main/java/com/care/common/service/SmsSendService.java

@@ -32,20 +32,14 @@ public interface SmsSendService  {
     boolean sendSmsCode4ModifyPhone(String phone,String params);
 
 
-/*    *//**
-     * 给紧急联系人发送短信
-     * @param phone
-     * @param params
-     * @return
-     *//*
-    boolean sendSmsToLianxiren(String phone,String params);*/
+
 
 
     /**
-     * 给紧急联系人发送短信
+     * 给紧急联系人或用户发送短信
      * @param phone
      * @param params
      * @return
      */
-    boolean sendSmsToLianxiren(SmsTemplateTypeEnum template , String phone, String params);
+    boolean sendSmsToLianxirenOrMember(SmsTemplateTypeEnum template , String phone, String params);
 }

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

@@ -158,9 +158,9 @@ public class CareEventOrderServiceImpl extends ServiceImpl<CareEventOrderMapper,
                     contacts.forEach(item ->{
                         boolean smsResult = false;
                         if (OrderTypeEnum.JIU_ZHI.getValue().equals(order.getOrderType())){
-                            smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.JIU_ZHI,item.getContactPhone(),house.getName());
+                            smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.JIU_ZHI,item.getContactPhone(),house.getName());
                         }else if(OrderTypeEnum.DIE_DAO.getValue().equals(order.getOrderType())){
-                             smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.DIE_DAO,item.getContactPhone(),house.getName());
+                             smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.DIE_DAO,item.getContactPhone(),house.getName());
                         }
                         if (smsResult){
                             CareEventOrderHandleHis his2 = new CareEventOrderHandleHis();
@@ -183,9 +183,9 @@ public class CareEventOrderServiceImpl extends ServiceImpl<CareEventOrderMapper,
                     chambList.forEach(item ->{
                         boolean smsResult = false;
                         if (OrderTypeEnum.JIU_ZHI.getValue().equals(order.getOrderType())){
-                            smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.JIU_ZHI,item.getPhone(),house.getName());
+                            smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.JIU_ZHI,item.getPhone(),house.getName());
                         }else if(OrderTypeEnum.DIE_DAO.getValue().equals(order.getOrderType())){
-                            smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.DIE_DAO,item.getPhone(),house.getName());
+                            smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.DIE_DAO,item.getPhone(),house.getName());
                         }
                         if (smsResult){
                             CareEventOrderHandleHis his2 = new CareEventOrderHandleHis();
@@ -346,9 +346,9 @@ public class CareEventOrderServiceImpl extends ServiceImpl<CareEventOrderMapper,
                     contacts.forEach(item ->{
                         boolean smsResult = false;
                         if (OrderTypeEnum.JIU_ZHI.getValue().equals(order.getOrderType())){
-                            smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.CANCEL_JIUZHI,item.getContactPhone(),house.getName());
+                            smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.CANCEL_JIUZHI,item.getContactPhone(),house.getName());
                         }else if(OrderTypeEnum.DIE_DAO.getValue().equals(order.getOrderType())){
-                            smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.CANCEL_DIEDAO,item.getContactPhone(),house.getName());
+                            smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.CANCEL_DIEDAO,item.getContactPhone(),house.getName());
                         }
                         if (smsResult){
                             CareEventOrderHandleHis his2 = new CareEventOrderHandleHis();
@@ -371,9 +371,9 @@ public class CareEventOrderServiceImpl extends ServiceImpl<CareEventOrderMapper,
                     chambList.forEach(item ->{
                         boolean smsResult = false;
                         if (OrderTypeEnum.JIU_ZHI.getValue().equals(order.getOrderType())){
-                            smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.CANCEL_JIUZHI,item.getPhone(),house.getName());
+                            smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.CANCEL_JIUZHI,item.getPhone(),house.getName());
                         }else if(OrderTypeEnum.DIE_DAO.getValue().equals(order.getOrderType())){
-                            smsResult = smsSendService.sendSmsToLianxiren(SmsTemplateTypeEnum.CANCEL_DIEDAO,item.getPhone(),house.getName());
+                            smsResult = smsSendService.sendSmsToLianxirenOrMember(SmsTemplateTypeEnum.CANCEL_DIEDAO,item.getPhone(),house.getName());
                         }
                         if (smsResult){
                             CareEventOrderHandleHis his2 = new CareEventOrderHandleHis();

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

@@ -0,0 +1,18 @@
+package com.care.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.care.common.entity.CareHandleLog;
+import com.care.common.mapper.CareHandleLogMapper;
+import com.care.common.service.CareHandleLogService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 事件-坐席处理历史(CareEventOrderHandleHis)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-05-21 00:08:35
+ */
+@Service
+public class CareHandleLogServiceImpl extends ServiceImpl<CareHandleLogMapper, CareHandleLog> implements CareHandleLogService {
+
+}

+ 6 - 19
src/main/java/com/care/common/service/impl/SmsSendServiceImpl.java

@@ -49,6 +49,9 @@ public class SmsSendServiceImpl implements SmsSendService {
     @Value("${sms.notice.templateid.diedao:#{null}}")
     private String noticeTemplateId4diedao;
 
+    @Value("${sms.notice.templateid.order.complete:#{null}}")
+    private String noticeTemplateId4OrderComplete;
+
     /**
      * 注册手机号发送短信验证码
      * @param phone
@@ -121,27 +124,9 @@ public class SmsSendServiceImpl implements SmsSendService {
         }
     }
 
-   /* @Override
-    public boolean sendSmsToLianxiren(String phone, String params) {
-        String[] _p = {params};
-
-        SendStatus sendStatus =  SmsUtil.sendSms(noticeEndpoint,
-                noticeRegion,
-                noticeSecretId,
-                noticeecretKey,
-                noticeSmsSdkAppId,
-                noticeSignName,
-                noticeTemplateId,
-                phone,_p);
-        if (sendStatus!=null && "Ok".equals(sendStatus.getCode())){
-            return true;
-        }else{
-            return  false;
-        }
-    }*/
 
     @Override
-    public boolean sendSmsToLianxiren(SmsTemplateTypeEnum template, String phone, String params) {
+    public boolean sendSmsToLianxirenOrMember(SmsTemplateTypeEnum template, String phone, String params) {
         String[] _p = {params};
         String _noticeTemplateId =  "";
         if (SmsTemplateTypeEnum.DIE_DAO.equals(template)){
@@ -152,6 +137,8 @@ public class SmsSendServiceImpl implements SmsSendService {
             _noticeTemplateId = noticTemplateId4CancelDiedao;
         }else if(SmsTemplateTypeEnum.CANCEL_JIUZHI.equals(template)){
             _noticeTemplateId = noticTemplateId4CancelJiuzhi;
+        } else if(SmsTemplateTypeEnum.ORDER_COMPLETE.equals(template)){
+            _noticeTemplateId = noticeTemplateId4OrderComplete;
         }
         if (StrUtil.isNotEmpty(_noticeTemplateId)){
             SendStatus sendStatus =  SmsUtil.sendSms(noticeEndpoint,

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

@@ -80,6 +80,7 @@ sms.notice.templateid.register.phone=1041847
 sms.notice.templateid.modify.password=1041838
 sms.notic.templateid.cancel.jiuzhi=1156954
 sms.notic.templateid.cancel.diedao=1156955
+sms.notice.templateid.order.complete=1156955