lidongdong
2023-09-26 ce108f1b9b7b09c2870dc8bc1b4abb62146f5472
西区手环项目模块
21个文件已添加
1个文件已修改
3089 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/bracelet/BraceletEarlyWarningDO.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/bracelet/BraceletUserDataDO.java 223 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/bracelet/CommunityBraceletService.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/BraceletApi.java 324 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/model/vos/PutmessageBody.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/model/vos/PutmessageDataInfo.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/pom.xml 145 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/ServiceBraceletApplication.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/api/BraceletUserDataApi.java 386 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/config/MyMetaObjectHandler.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/config/MybatisPlusConfig.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/config/ParamOutAspect.java 125 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/dao/BraceletEarlyWarningDao.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/dao/BraceletUserDataDao.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/model/dos/SysUser.java 274 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/service/BraceletEarlyWarningService.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/service/BraceletUserDataService.java 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/service/impl/BraceletEarlyWarningImpl.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/service/impl/BraceletUserDataImpl.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/resources/mapper/BraceletEarlyWarning.xml 229 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/resources/mapper/BraceletUserDataMapper.xml 607 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/bootstrap.yml 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/bracelet/BraceletEarlyWarningDO.java
New file
@@ -0,0 +1,73 @@
package com.panzhihua.common.model.dtos.bracelet;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
@ApiModel("手环预警数据表")
public class BraceletEarlyWarningDO
{
    @ApiModelProperty(value = "主键")
    private String id;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "预警时间(创建时间)")
    private Date creationTime;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "处理时间")
    private Date disposeTime;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updataTime;
    @ApiModelProperty(value = "处理状态(1 未处理   2 已处理   3处理中)")
    private String disposeType;
    @ApiModelProperty(value = "处理人")
    private String disposeUserId;
    @ApiModelProperty(value = "设备编号")
    private String equipmentNumber;
    //预警类型( 1血压   2心率  3体温   4 SOS预警 )
    @ApiModelProperty(value = "预警类型( 1血压   2心率  3体温   4 SOS预警 )")
    private String earlyWarningType;
    @ApiModelProperty(value = "预警内容")
    private String earlyWarningText;
    @ApiModelProperty(value = "处理图片")
    private String disposeImgurl;
    @ApiModelProperty(value = "处理内容")
    private String disposeText;
    @ApiModelProperty(value = "处理结果")
    private String disposeResult;
    @ApiModelProperty(value = "社区id")
    private String communityId;
    @ApiModelProperty(value = "视频地址")
    private String disposeVideoUrl;
    @ApiModelProperty(value = "处理人姓名")
    private String disposeUserName;
    @ApiModelProperty(value = "绑定手机号")
    private String binPhone;
    @ApiModelProperty(value = "用户姓名")
    private String userName;
    @ApiModelProperty(value = "'居住地址'")
    private String address;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/bracelet/BraceletUserDataDO.java
New file
@@ -0,0 +1,223 @@
package com.panzhihua.common.model.dtos.bracelet;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
@ApiModel("手环用户数据表")
public class BraceletUserDataDO
{
    /**
     * 主键id
     */
    @ApiModelProperty(value = "主键")
    private String id;
    /**
     * 设备类型 智能手表,智能手环
     */
    @ApiModelProperty(value = "设备类型 智能手表,智能手环")
    private String deviceType;
    /**
     * 设备型号 W11,W6,W5
     */
    @ApiModelProperty(value = "主键")
    private String deviceModel;
    /**
     * 设备 IMEI
     */
    @ApiModelProperty(value = "设备 IMEI")
    private String deviceId;
    /**
     * 设备手机号码
     */
    @ApiModelProperty(value = "设备手机号码")
    private String mobile;
    /**
     * 101:血压数据
     * 107:体温数据
     * 110:计步数据
     * 112:心率数据
     * 201:SOS 呼叫请求
     * 202:定位数据
     * 301:穿戴设备电量
     * 302:设备在线与离线
     */
    @ApiModelProperty(value = "101:血压数据 107:体温数据 110:计步数据 112:心率数据 201:SOS 呼叫请求 202:定位数据 301:穿戴设备电量 302:设备在线与离线")
    private String dataType;
    /**
     * 数据 id
     */
    @ApiModelProperty(value = "数据id")
    private String dataId;//":600911,
    @ApiModelProperty(value = "更新时间")
    private String time;//":"2020-12-23 12:00:00.210"
    /**
     * 血压测量新数据
     */
    // pm 心率
    @ApiModelProperty(value = "心率")
    private String pm;
    // 高压(收缩压)
    @ApiModelProperty(value = "高压(收缩压)")
    private String pcp;
    //低压(舒张压)
    @ApiModelProperty(value = "低压(舒张压)")
    private String pdp;
    /**
     * 温度测量新数据
     */
    //温度
    @ApiModelProperty(value = "温度")
    private String etg;
    /**
     * 运动测量新数据
     * @return
     */
    //行走步数
    @ApiModelProperty(value = "行走步数")
    private String step;
    /**
     * SOS 请求的示例数据 定位数据的示例
     *
     * @return
     */
    //经度
    @ApiModelProperty(value = "经度")
    private String lng;//":"113.929906",
    //纬度
    @ApiModelProperty(value = "纬度")
    private String lat;//":"22.52887",
    //定位方式      “0”:GPS “1”:LBS “2”:WIFI
    @ApiModelProperty(value = "定位方式      “0”:GPS “1”:LBS “2”:WIFI")
    private String mode;//":"1",
    /**
     * 设备电量的示例数据
     * @return
     */
    //电量 取值 0-100,例如:取值“20” 表示电量 20%
    @ApiModelProperty(value = "电量 取值 0-100,例如:取值“20” 表示电量 20%")
    private String elec;//":"1",
    /**
     * 设备在线与离线的示例数据
     * @return
     */
    //“1”:设备在线  “0”:设备离线
    @ApiModelProperty(value = "“1”:设备在线  “0”:设备离线")
    private String onoff;//":"1",
    //社区id
    @ApiModelProperty(value = "社区id")
    private String communityId;//":"1",
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date creationTime;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date  updataTime;
    //用户姓名
    @ApiModelProperty(value = "用户姓名")
    private String userName;
    //年龄
    @ApiModelProperty(value = "年龄")
    private String ageNum;
    //1 男    2 女
    @ApiModelProperty(value = "1 男    2 女")
    private String sex;
    //身份证
    @ApiModelProperty(value = "身份证")
    private String identityCard;
    //居住地址
    @ApiModelProperty(value = "居住地址")
    private String address;
    //详细居住地址
    @ApiModelProperty(value = "详细居住地址")
    private String detailAddress;
    //居住地的经度
    @ApiModelProperty(value = "居住地的经度")
    private String addLng;
    //居住地的纬度
    @ApiModelProperty(value = "居住地的纬度")
    private String addLat;
    //设备绑定手机号
    @ApiModelProperty(value = "设备绑定手机号")
    private String binPhone;
    //紧急联系人
    @ApiModelProperty(value = "紧急联系人")
    private String emergencyContact;
    //心率下限
    @ApiModelProperty(value = "心率下限")
    private String lowHeartRate;
    //心率上限
    @ApiModelProperty(value = "心率上限")
    private String tallHeartRate;
    //体温下限
    @ApiModelProperty(value = "体温下限")
    private String lowAnimalHeat;
    //体温上限
    @ApiModelProperty(value = "体温上限")
    private String tallAnimalHeat;
    //低压下限
    @ApiModelProperty(value = "低压下限")
    private String lowTensionFloor;
    //低压上限
    @ApiModelProperty(value = "低压上限")
    private String lowTensionUpperLimit;
    //高压下限
    @ApiModelProperty(value = "高压下限")
    private String highPressureFloor;
    //高压上限
    @ApiModelProperty(value = "高压上限")
    private String highPressureUpperLimit;
    @ApiModelProperty(value = "是否紧急  0 正常   1紧急")
    private String isAbnormal;
    @ApiModelProperty(value = "SOS电话1")
    private String sgtel1;
    @ApiModelProperty(value = "SOS电话2")
    private String sgtel2;
    @ApiModelProperty(value = "SOS电话3")
    private String sgtel3;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/bracelet/CommunityBraceletService.java
New file
@@ -0,0 +1,105 @@
package com.panzhihua.common.service.bracelet;
import com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO;
import com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO;
import com.panzhihua.common.model.vos.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
@FeignClient(name = "bracele")
public interface CommunityBraceletService
{
    @PostMapping("/braceletApi/addBracelet")
    R addBracelet(@RequestBody BraceletUserDataDO braceletUserDataDO);
    @PostMapping("/braceletApi/upBracelet")
    R upBracelet(@RequestBody BraceletUserDataDO braceletUserDataDO);
    @DeleteMapping("/braceletApi/delectData")
    R delectData(@RequestParam("id") String id);
    @GetMapping("/braceletApi/getData")
    R getData(@RequestParam("pageNum") Integer pageNum,
              @RequestParam("pageSize") Integer pageSize,
              @RequestParam("communityId") String communityId,
              @RequestParam("userName") String userName,
              @RequestParam("phone") String phone);
    /**
     * 设备用户详情数据
     * @return
     */
    @GetMapping("/braceletApi/getDetails")
    R getDetails(@RequestParam("deviceID") String deviceID);
    /**
     * 编辑手环预警数据
     * @param braceletEarlyWarningDO
     * @return
     */
    @PostMapping("/braceletApi/upEarlyWarning")
    R upEarlyWarning(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO) ;
    /**
     * 删除预警数据
     * @param id
     * @return
     */
    @DeleteMapping("/braceletApi/delectEarlyWarning")
    R delectEarlyWarning(@RequestParam("id") String id);
    /**
     * 获取预警数据
     * @param communityId
     * @return
     */
    @GetMapping("/braceletApi/getEarlyWarningList")
    R getList(@RequestParam("pageNum") Integer pageNum,
              @RequestParam("pageSize") Integer pageSize,
              @RequestParam("communityId") String communityId,
              @RequestParam("equipmentNumber") String equipmentNumber,
              @RequestParam("disposeUserId") String disposeUserId,
              @RequestParam("type") String type,
              @RequestParam("userName") String userName,
              @RequestParam("phone") String phone);
    /**
     * 获取单个预警信息详情
     * @param id
     * @return
     */
    @GetMapping("/braceletApi/getEarlyWarningDetails")
    R getEarlyWarningDetails(@RequestParam("id") String id);
    /**
     * 后台处理接口
     * @return
     */
    @PostMapping("/braceletApi/dispose")
    R dispose(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO);
    /**
     * 微信处理接口
     * @param braceletEarlyWarningDO
     * @return
     */
    @PostMapping("/braceletApi/WXdispose")
    R  WXdispose(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO);
    /**
     * 处理人
     * @param communityId
     * @return
     */
    @GetMapping("/braceletApi/conductorList")
    R conductorList(@RequestParam("communityId") String communityId);
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/BraceletApi.java
New file
@@ -0,0 +1,324 @@
package com.panzhihua.community_backstage.api;
/**
 * 西区手环接口
 */
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO;
import com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO;
import com.panzhihua.common.model.dtos.bracelet.SetSOS;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.service.bracelet.CommunityBraceletService;
import com.panzhihua.common.utlis.HttpClientUtil;
import com.panzhihua.community_backstage.model.vos.PutmessageBody;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.Map;
@Slf4j
@Api(tags = {"西区手环接口"})
@RestController
@RequestMapping("/braceletApi/")
public class BraceletApi
{
    @Resource
    private CommunityBraceletService communityBraceletService;
    /**
     * 用户手环参数变化  更新数据
     * @param putmessageBody
     * @return
     */
    @ApiOperation(value = "用户手环推送信息接口", response = PutmessageBody.class)
    @PostMapping("putmessage")
    public R putmessage(@RequestBody PutmessageBody putmessageBody)
    {
        BraceletUserDataDO dataDO=new BraceletUserDataDO();
        dataDO.setDeviceType(putmessageBody.getDeviceType());
        dataDO.setDeviceModel(putmessageBody.getDeviceModel());
        dataDO.setDeviceId(putmessageBody.getDeviceID());
        dataDO.setMobile(putmessageBody.getMobile());
        dataDO.setDataType(putmessageBody.getDataType());
        if(putmessageBody.getDataInfo()!=null)
        {
            dataDO.setDataId(putmessageBody.getDataInfo().getId());
            dataDO.setTime(putmessageBody.getDataInfo().getTime());
            dataDO.setPm(putmessageBody.getDataInfo().getPm());
            dataDO.setPcp(putmessageBody.getDataInfo().getPcp());
            dataDO.setPdp(putmessageBody.getDataInfo().getPdp());
            dataDO.setEtg(putmessageBody.getDataInfo().getEtg());
            dataDO.setStep(putmessageBody.getDataInfo().getStep());
            dataDO.setLng(putmessageBody.getDataInfo().getLng());
            dataDO.setLat(putmessageBody.getDataInfo().getLat());
            dataDO.setMode(putmessageBody.getDataInfo().getMode());
            dataDO.setElec(putmessageBody.getDataInfo().getElec());
            dataDO.setOnoff(putmessageBody.getDataInfo().getOnoff());
        }
        log.info("用户手环 putmessage : "+putmessageBody.toString());
//        return R.ok(communityBraceletService.addBracelet(dataDO));
        return R.ok(dataDO);
    }
    /**
     * 手环数据获取
     * @param pageNum
     * @param pageSize
     * @param communityId
     * @return
     */
    @ApiOperation(value = "手环数据获取")
    @GetMapping("bracelet/getData")
    public R getData(@RequestParam("pageNum") Integer pageNum,
                     @RequestParam("pageSize") Integer pageSize,
                     @RequestParam("communityId") String communityId,
                     @RequestParam("userName") String userName,
                     @RequestParam("phone") String phone)
    {
        return communityBraceletService.getData(pageNum,pageSize,communityId,userName,phone);
    }
    /**
     * 手环数据编辑接口
     * @return
     */
    @ApiOperation(value = "手环数据编辑接口")
    @PostMapping("bracelet/upBracelet")
    public R upBracelet(@RequestBody BraceletUserDataDO braceletUserDataDO)
    {
        if(StringUtils.isEmpty(braceletUserDataDO.getDeviceId()))
        {
            return R.fail("设备id不能为空");
        }
        return communityBraceletService.upBracelet(braceletUserDataDO);
    }
    /**
     * 删除设备
     * @param id   设备id
     * @return
     */
    @ApiOperation(value = "删除设备")
    @DeleteMapping("bracelet/delectData")
    public R delectData(@RequestParam("id") String id)
    {
        return communityBraceletService.delectData(id);
    }
    /**
     * 用户手环参数变化  新增数据
     * @param braceletUserDataDO
     * @return
     */
    @ApiOperation(value = "用户手环新增用户接口")
    @PostMapping("addBraceletUser")
    public R addBraceletUser(@RequestBody BraceletUserDataDO braceletUserDataDO)
    {
        if(braceletUserDataDO==null)
        {
            return R.fail("参数不能为空");
        }
        if(StringUtils.isEmpty(braceletUserDataDO.getDeviceId()))
        {
            return R.fail("设备ID 不能为空");
        }
//        log.info("用户手环 putmessage : "+braceletUserDataDO.toString());
        return communityBraceletService.addBracelet(braceletUserDataDO);
    }
    /**
     * 用户手环参数变化  更新数据
     * @return
     */
    @ApiOperation(value = "手环设置SOS联系人")
    @PostMapping("bracelet/setSOS")
    public R setSOS(@RequestBody SetSOS setSOS)
    {
        if(setSOS==null)
        {
            return R.fail("参数不能为空");
        }
        if(StringUtils.isEmpty(setSOS.getDeviceId()))
        {
            return R.fail("设备ID 不能为空");
        }
        if(StringUtils.isEmpty(setSOS.getEmergencyContact1()) && StringUtils.isEmpty(setSOS.getEmergencyContact2())
                && StringUtils.isEmpty(setSOS.getEmergencyContact3()))
        {
            return R.fail("联系人不能全部为空");
        }
//        3 W11 智能手表
//        2 W5 智能手环
//        1 W6 智能手表
        Map allMap=new HashMap();
        Map phone=new HashMap();
//        if(StringUtils.equals(braceletUserDataDO.getDeviceModel(),"W11"))
//        {
//            allMap.put("deviceModelId",3);
//        }
//        else if(StringUtils.equals(braceletUserDataDO.getDeviceModel(),"W5"))
//        {
//            allMap.put("deviceModelId",2);
//        }
//        else
//        {
//            allMap.put("deviceModelId",1);
//        }
        allMap.put("deviceModelId",3);
        BraceletUserDataDO dataDO=new BraceletUserDataDO();
        dataDO.setDeviceId(setSOS.getDeviceId());
        dataDO.setOnoff("1");
        phone.put("sgtel1",setSOS.getEmergencyContact1());
        dataDO.setSgtel1(setSOS.getEmergencyContact1());
        phone.put("sgtel2",setSOS.getEmergencyContact2());
        dataDO.setSgtel2(setSOS.getEmergencyContact2());
        phone.put("sgtel3",setSOS.getEmergencyContact3());
        dataDO.setSgtel3(setSOS.getEmergencyContact3());
        allMap.put("deviceID",setSOS.getDeviceId());
        allMap.put("apiKey","C71584EDE98983A1976AAE8DBCF6B9CF");
        allMap.put("type",1);
        allMap.put("dataInfo",phone);
        String resultJson = HttpClientUtil.sendPostByJson("http://apps.jkez.net/openapi/mobile/saveDeviceSet", JSON.toJSONString(allMap),
                0,null,null);
        JSONObject result = JSON.parseObject(resultJson);
        if(!StringUtils.isEmpty(dataDO.getSgtel1()) || !StringUtils.isEmpty(dataDO.getSgtel2()) ||
                !StringUtils.isEmpty(dataDO.getSgtel3()))
        {
            communityBraceletService.upBracelet(dataDO);
        }
        R r=new R();
        int code=result.getIntValue("code");
        if(code==400)
        {
            dataDO.setOnoff("0");
        }
        communityBraceletService.upBracelet(dataDO);
        r.setCode(code);
        r.setMsg(result.getString("message"));
        return r;
    }
    /**
     * 获取用户  手环数据详情
     * @param deviceID
     * @return
     */
    @ApiOperation(value = "获取用户  手环数据详情")
    @GetMapping("/bracelet/getDetails")
    public R getDetails(@RequestParam("deviceID") String deviceID)
    {
        return communityBraceletService.getDetails(deviceID);
    }
    /**
     * 编辑手环预警数据
     * @param braceletEarlyWarningDO
     * @return
     */
    @ApiOperation(value = "编辑手环预警数据")
    @PostMapping("/bracelet/upEarlyWarning")
    public R upEarlyWarning(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO) {
        return communityBraceletService.upEarlyWarning(braceletEarlyWarningDO);
    }
    /**
     * 删除预警数据
     * @param id
     * @return
     */
    @ApiOperation(value = "删除预警数据")
    @DeleteMapping("/bracelet/delectEarlyWarning")
    public R delectEarlyWarning(@RequestParam("id") String id) {
        return communityBraceletService.delectEarlyWarning(id);
    }
    /**
     * 获取预警数据
     * @param communityId
     * @return
     */
    @ApiOperation(value = "获取预警数据")
    @GetMapping("/bracelet/getEarlyWarningList")
    public R getList(@RequestParam("pageNum") Integer pageNum,
                     @RequestParam("pageSize") Integer pageSize,
                     @RequestParam("communityId") String communityId,
                     @RequestParam("equipmentNumber") String equipmentNumber,
                     @RequestParam("type") String type,
                     @RequestParam("userName") String userName,
                     @RequestParam("phone") String phone)
    {
        return communityBraceletService.getList(pageNum,pageSize,communityId,equipmentNumber,"",type,userName,phone);
    }
    /**
     * 获取单个预警信息详情
     * @param id
     * @return
     */
    @ApiOperation(value = "获取单个预警信息详情")
    @GetMapping("/bracelet/getEarlyWarningDetails")
    public R getEarlyWarningDetails(@RequestParam("id") String id)
    {
        return communityBraceletService.getEarlyWarningDetails(id);
    }
    /**
     * 处理接口
     * @return
     */
    @ApiOperation(value = "处理接口")
    @PostMapping("/bracelet/dispose")
    public R dispose(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO)
    {
        return communityBraceletService.dispose(braceletEarlyWarningDO);
    }
    /**
     * 处理人
     * @param communityId
     * @return
     */
    @ApiOperation(value = "处理人")
    @GetMapping("bracelet/conductorList")
    public R conductorList(@RequestParam("communityId") String communityId)
    {
        return communityBraceletService.conductorList(communityId);
    }
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/model/vos/PutmessageBody.java
New file
@@ -0,0 +1,55 @@
package com.panzhihua.community_backstage.model.vos;
import io.swagger.annotations.ApiModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@ApiModel(value = "手环参数类")
@AllArgsConstructor
@NoArgsConstructor
public class PutmessageBody {
    /**
     * 设备类型 智能手表,智能手环
     */
    private String deviceType;
    /**
     * 设备型号 W11,W6,W5
     */
    private String deviceModel;
    /**
     * 设备 IMEI
     */
    private String deviceID;
    /**
     * 设备手机号码
     */
    private String mobile;
    /**
     * 101:血压数据
     * 107:体温数据
     * 110:计步数据
     * 112:心率数据
     * 201:SOS 呼叫请求
     * 202:定位数据
     * 301:穿戴设备电量
     * 302:设备在线与离线
     */
    private String dataType;
    /**
     * 数据内容
     */
    private PutmessageDataInfo dataInfo;
    @Override
    public String toString() {
        return "PutmessageBody{" +"deviceType='" + deviceType + ", deviceModel='" + deviceModel  +
                ", deviceID='" + deviceID  +
                ", mobile='" + mobile  +
                ", dataType='" + dataType  +
                ", dataInfo=" + dataInfo +
                '}';
    }
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/model/vos/PutmessageDataInfo.java
New file
@@ -0,0 +1,93 @@
package com.panzhihua.community_backstage.model.vos;
import io.swagger.annotations.ApiModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@ApiModel(value = "手环子类")
@AllArgsConstructor
@NoArgsConstructor
public class PutmessageDataInfo
{
    /**
     * 数据 id
     */
    private String id;//":600911,
    private String time;//":"2020-12-23 12:00:00.210"
    /**
     * 血压测量新数据
     */
    // pm 心率
    private String pm;
    // 高压(收缩压)
    private String pcp;
    //低压(舒张压)
    private String pdp;
    /**
     * 温度测量新数据
     */
    //温度
    private String etg;
    /**
     * 运动测量新数据
     * @return
     */
    //行走步数
    private String step;
    /**
     * SOS 请求的示例数据 定位数据的示例
     *
     * @return
     */
    //经度
    private String lng;//":"113.929906",
    //纬度
    private String lat;//":"22.52887",
    //定位方式      “0”:GPS “1”:LBS “2”:WIFI
    private String mode;//":"1",
    /**
     * 设备电量的示例数据
     * @return
     */
    //电量 取值 0-100,例如:取值“20” 表示电量 20%
    private String elec;//":"1",
    /**
     * 设备在线与离线的示例数据
     * @return
     */
    //“1”:设备在线  “0”:设备离线
    private String onoff;//":"1",
    @Override
    public String toString() {
        return "PutmessageDataInfo{" +
                "id='" + id +
                ", time='" + time +
                ", pm='" + pm +
                ", pcp='" + pcp +
                ", pdp='" + pdp +
                ", etg='" + etg +
                ", step='" + step +
                ", lng='" + lng +
                ", lat='" + lat +
                ", mode='" + mode +
                ", elec='" + elec +
                ", onoff='" + onoff +
                '}';
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/pom.xml
New file
@@ -0,0 +1,145 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.panzhihua</groupId>
        <artifactId>zhihuishequ</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <groupId>com.panzhihua</groupId>
    <artifactId>service_bracelet</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>service_bracelet</name>
    <description>西区手环设备</description>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
            <version>3.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.2</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.netflix.hystrix</groupId>
            <artifactId>hystrix-javanica</artifactId>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>com.panzhihua</groupId>
            <artifactId>common</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.6</version>
        </dependency>
        <!--添加监控依赖包-->
        <dependency>
            <groupId>io.micrometer</groupId>
            <artifactId>micrometer-registry-prometheus</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <mainClass>com.panzhihua.service_bracelet.ServiceEquipmentApplication</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.2.0</version>
                <configuration>
                    <imageName>registry.cn-chengdu.aliyuncs.com/panzhihua/service_community:v1</imageName>
                    <serverId></serverId>
                    <baseImage>java</baseImage>
                    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
        </repository>
    </repositories>
</project>
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/ServiceBraceletApplication.java
New file
@@ -0,0 +1,21 @@
package com.panzhihua.service_bracelet;
import org.springframework.boot.SpringApplication;
import org.springframework.cloud.client.SpringCloudApplication;
import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.ComponentScan;
@SpringCloudApplication
@EnableFeignClients(basePackages = {"com.panzhihua.common.service"})
@EnableEurekaClient
@EnableCircuitBreaker
@ComponentScan({"com.panzhihua.service_bracelet", "com.panzhihua.common"})
public class ServiceBraceletApplication {
    public static void main(String[] args) {
        SpringApplication.run(ServiceBraceletApplication.class, args);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/api/BraceletUserDataApi.java
New file
@@ -0,0 +1,386 @@
package com.panzhihua.service_bracelet.api;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO;
import com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_bracelet.model.dos.SysUser;
import com.panzhihua.service_bracelet.service.BraceletEarlyWarningService;
import com.panzhihua.service_bracelet.service.BraceletUserDataService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
@Slf4j
@RestController
@RequestMapping("/braceletApi")
public class BraceletUserDataApi {
    @Resource
    private BraceletUserDataService braceletUserDataService;
    //手环预警功能
    @Resource
    private BraceletEarlyWarningService braceletEarlyWarningService;
    /**
     * 新增数据
     *
     * @param braceletUserDataDO
     *            请求参数
     * @return 新增数据
     */
    @PostMapping("/addBracelet")
    public R addBracelet(@RequestBody BraceletUserDataDO braceletUserDataDO)
    {
        BraceletUserDataDO data=braceletUserDataService.getDetails(braceletUserDataDO.getDeviceId());
        braceletUserDataDO.setIsAbnormal("0");
        braceletUserDataDO.setOnoff("1");
        if(data==null || StringUtils.isEmpty(data.getDeviceId()))
        {
            return R.ok(braceletUserDataService.addBracelet(braceletUserDataDO));
        }
        else
        {
            //101:血压数据 107:体温数据 110:计步数据 112:心率数据 201:SOS 呼叫请求 202:定位数据 301:穿戴设备电量 302:设备在线与离线
            if(!StringUtils.isEmpty(braceletUserDataDO.getDataType()))
            {
                switch (braceletUserDataDO.getDataType())
                {
                    case "101":
                        BraceletEarlyWarningDO data101=new BraceletEarlyWarningDO();
                        data101.setEquipmentNumber(braceletUserDataDO.getDeviceId());
                        data101.setDisposeType("1");
                        data101.setCommunityId(data.getCommunityId());
                        //低压
                        if(Integer.valueOf(braceletUserDataDO.getPdp())<Integer.valueOf(data.getLowTensionFloor()))
                        {
                            //低压报警过低
                            data101.setEarlyWarningText("血压低压(舒张压)低于设定值");
                            data101.setEarlyWarningType("1");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data101);
                        }
                        if(Integer.valueOf(braceletUserDataDO.getPdp())>Integer.valueOf(data.getLowTensionUpperLimit()))
                        {
                            //低压报警过高
                            data101.setEarlyWarningText("血压低压(舒张压)高于设定值");
                            data101.setEarlyWarningType("1");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data101);
                        }
                        if(Integer.valueOf(braceletUserDataDO.getPcp())<Integer.valueOf(data.getHighPressureFloor()))
                        {
                            //高压报警过低
                            data101.setEarlyWarningText("血压高压(收缩压)低于设定值");
                            data101.setEarlyWarningType("1");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data101);
                        }
                        if(Integer.valueOf(braceletUserDataDO.getPcp())>Integer.valueOf(data.getHighPressureUpperLimit()))
                        {
                            //高压报警过高
                            data101.setEarlyWarningText("血压高压(收缩压)高于设定值");
                            data101.setEarlyWarningType("1");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data101);
                        }
                        if(Integer.valueOf(braceletUserDataDO.getPm())<Integer.valueOf(data.getLowHeartRate()))
                        {
                            //心率报警过低
                            data101.setEarlyWarningText("心率低于设定值");
                            data101.setEarlyWarningType("2");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data101);
                        }
                        if(Integer.valueOf(braceletUserDataDO.getPm())>Integer.valueOf(data.getTallHeartRate()))
                        {
                            //心率报警过高
                            data101.setEarlyWarningText("心率高于设定值");
                            data101.setEarlyWarningType("2");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data101);
                        }
                        break;
                    //体温数据
                    case "107":
                        BraceletEarlyWarningDO data107=new BraceletEarlyWarningDO();
                        data107.setEquipmentNumber(braceletUserDataDO.getDeviceId());
                        data107.setDisposeType("1");
                        data107.setCommunityId(data.getCommunityId());
                        if(Double.valueOf(braceletUserDataDO.getEtg())<Double.valueOf(data.getLowAnimalHeat()))
                        {
                            //体温报警过低
                            data107.setEarlyWarningText("体温低于设定值");
                            data107.setEarlyWarningType("3");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data107);
                        }
                        if(Double.valueOf(braceletUserDataDO.getEtg())>Double.valueOf(data.getTallAnimalHeat()))
                        {
                            //体温报警过高
                            data107.setEarlyWarningText("体温高于设定值");
                            data107.setEarlyWarningType("3");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data107);
                        }
                        break;
                    //心率数据
                    case "112":
                        BraceletEarlyWarningDO data112=new BraceletEarlyWarningDO();
                        data112.setEquipmentNumber(braceletUserDataDO.getDeviceId());
                        data112.setDisposeType("1");
                        data112.setCommunityId(data.getCommunityId());
                        if(Integer.valueOf(braceletUserDataDO.getPm())<Integer.valueOf(data.getLowHeartRate()))
                        {
                            //心率报警过低
                            data112.setEarlyWarningText("心率低于设定值");
                            data112.setEarlyWarningType("2");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data112);
                        }
                        if(Integer.valueOf(braceletUserDataDO.getPm())>Integer.valueOf(data.getTallHeartRate()))
                        {
                            //心率报警过高
                            data112.setEarlyWarningText("心率高于设定值");
                            data112.setEarlyWarningType("2");
                            braceletUserDataDO.setIsAbnormal("1");
                            braceletEarlyWarningService.addBracelet(data112);
                        }
                        break;
                    //sos数据
                    case "201":
                        BraceletEarlyWarningDO data201=new BraceletEarlyWarningDO();
                        data201.setEquipmentNumber(braceletUserDataDO.getDeviceId());
                        data201.setDisposeType("1");
                        data201.setCommunityId(data.getCommunityId());
                        data201.setEarlyWarningText("SOS预警");
                        data201.setEarlyWarningType("4");
                        braceletUserDataDO.setIsAbnormal("1");
                        braceletEarlyWarningService.addBracelet(data201);
                        break;
                }
            }
            return R.ok(braceletUserDataService.upBracelet(braceletUserDataDO));
        }
    }
    /**
     * 新增数据
     *
     * @param braceletUserDataDO
     *            请求参数
     * @return 新增数据
     */
    @PostMapping("/upBracelet")
    public R upBracelet(@RequestBody BraceletUserDataDO braceletUserDataDO)
    {
        return R.ok(braceletUserDataService.upBracelet(braceletUserDataDO));
    }
    /**
     * 新增数据
     *
     * @param id
     *            请求参数
     * @return 新增数据
     */
    @DeleteMapping("/delectData")
    public R delectData(@RequestParam("id") String id)
    {
        return R.ok(braceletUserDataService.delectData(id));
    }
    /**
     * 分页查询  数据
     * @param pageNum
     * @param pageSize
     * @return
     */
    @GetMapping("/getData")
    public R<IPage<BraceletUserDataDO>> getData(@RequestParam("pageNum") Integer pageNum,
                         @RequestParam("pageSize") Integer pageSize,
                         @RequestParam("communityId") String communityId,
                         @RequestParam("userName") String userName,
                         @RequestParam("phone") String phone)
    {
        Page page = new Page<>();
        page.setCurrent(pageNum);
        page.setSize(pageSize);
        return R.ok(braceletUserDataService.getData(page,communityId,userName,phone));
    }
    /**
     * 设备用户详情数据
     * @return
     */
    @GetMapping("/getDetails")
    public R<BraceletUserDataDO> getDetails(@RequestParam("deviceID") String deviceID)
    {
        return R.ok(braceletUserDataService.getDetails(deviceID));
    }
    /**
     * 新增手环预警数据
     * @param braceletEarlyWarningDO
     * @return
     */
    @PostMapping("/addEarlyWarning")
    public R addEarlyWarning(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO) {
        return R.ok(braceletEarlyWarningService.addBracelet(braceletEarlyWarningDO));
    }
    /**
     * 编辑手环预警数据
     * @param braceletEarlyWarningDO
     * @return
     */
    @PostMapping("/upEarlyWarning")
    public R upEarlyWarning(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO) {
        return R.ok(braceletEarlyWarningService.upBracelet(braceletEarlyWarningDO));
    }
    /**
     * 删除预警数据
     * @param id
     * @return
     */
    @DeleteMapping("/delectEarlyWarning")
    public R delectEarlyWarning(@RequestParam("id") String id) {
        return R.ok(braceletEarlyWarningService.delectData(id));
    }
    /**
     * 获取预警数据
     * @param communityId
     * @return
     */
    @GetMapping("/getEarlyWarningList")
    public R<IPage<BraceletEarlyWarningDO>> getList(@RequestParam("pageNum") Integer pageNum,
                                                    @RequestParam("pageSize") Integer pageSize,
                                                    @RequestParam("communityId") String communityId,
                                                    @RequestParam("equipmentNumber") String equipmentNumber,
                                                    @RequestParam("disposeUserId") String disposeUserId,
                                                    @RequestParam("type") String type,
                                                    @RequestParam("userName") String userName,
                                                    @RequestParam("phone") String phone)
    {
        Page page=new Page();
        page.setSize(pageSize);
        page.setCurrent(pageNum);
        return R.ok(braceletEarlyWarningService.getList(page,communityId,equipmentNumber,disposeUserId,type,userName,phone));
    }
    /**
     * 获取单个预警信息详情
     * @param id
     * @return
     */
    @GetMapping("/getEarlyWarningDetails")
    public R<BraceletEarlyWarningDO> getEarlyWarningDetails(@RequestParam("id") String id)
    {
        return R.ok(braceletEarlyWarningService.getDetails(id));
    }
    /**
     * 后台处理接口
     * @return
     */
    @PostMapping("/dispose")
    public R dispose(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO)
    {
        if(StringUtils.isEmpty(braceletEarlyWarningDO.getId()))
        {
            return R.fail("id不能为空");
        }
        if(StringUtils.equals(braceletEarlyWarningDO.getDisposeType(),"4"))
        {
            BraceletEarlyWarningDO da=new BraceletEarlyWarningDO();
            da.setDisposeType("4");
            da.setId(braceletEarlyWarningDO.getId());
            BraceletEarlyWarningDO da2=braceletEarlyWarningService.getDetails(braceletEarlyWarningDO.getId());
            BraceletUserDataDO data=new BraceletUserDataDO();
            data.setIsAbnormal("0");
            data.setDeviceId(da2.getEquipmentNumber());
            braceletUserDataService.upBracelet(data);
            return R.ok(braceletEarlyWarningService.upBracelet(da));
        }
        if(StringUtils.isEmpty(braceletEarlyWarningDO.getDisposeUserId()))
        {
            return R.fail("处理人员不能为空");
        }
        braceletEarlyWarningDO.setDisposeType("3");
        return R.ok(braceletEarlyWarningService.upBracelet(braceletEarlyWarningDO));
    }
    /**
     * 微信处理接口
     * @param braceletEarlyWarningDO
     * @return
     */
    @PostMapping("/WXdispose")
    public R  WXdispose(@RequestBody BraceletEarlyWarningDO braceletEarlyWarningDO)
    {
        //
        if(braceletEarlyWarningService.WXdispose(braceletEarlyWarningDO)>0)
        {
            BraceletEarlyWarningDO da=braceletEarlyWarningService.getDetails(braceletEarlyWarningDO.getId());
            BraceletUserDataDO data=new BraceletUserDataDO();
            data.setIsAbnormal("0");
            data.setDeviceId(da.getEquipmentNumber());
            braceletUserDataService.upBracelet(data);
            return R.ok();
        }
        else
        {
            return R.fail("操作失败");
        }
    }
    /**
     * 处理人
     * @param communityId
     * @return
     */
    @GetMapping("/conductorList")
    public R<List<SysUser>> conductorList(@RequestParam("communityId") String communityId)
    {
        return R.ok(braceletUserDataService.conductorList(communityId));
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/config/MyMetaObjectHandler.java
New file
@@ -0,0 +1,39 @@
package com.panzhihua.service_bracelet.config;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
import java.util.Date;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 自动填充
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2020-12-11 14:23
 **/
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("start insert fill ....");
        // this.strictInsertFill(metaObject, "createTime", Date.class, new Date()); // 起始版本 3.3.0(推荐使用)
        // 或者
        this.strictInsertFill(metaObject, "createAt", () -> new Date(), Date.class); // 起始版本 3.3.3(推荐)
        this.strictInsertFill(metaObject, "updateAt", () -> new Date(), Date.class); // 起始版本 3.3.3(推荐)
        // 或者
        // this.fillStrategy(metaObject, "createTime", LocalDateTime.now()); // 也可以使用(3.3.0 该方法有bug)
    }
    @Override
    public void updateFill(MetaObject metaObject) {
        log.info("start update fill ....");
        // this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now()); // 起始版本 3.3.0(推荐)
        // 或者
        this.strictUpdateFill(metaObject, "updateAt", () -> new Date(), Date.class); // 起始版本 3.3.3(推荐)
        // 或者
        // this.fillStrategy(metaObject, "updateTime", LocalDateTime.now()); // 也可以使用(3.3.0 该方法有bug)
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/config/MybatisPlusConfig.java
New file
@@ -0,0 +1,34 @@
package com.panzhihua.service_bracelet.config;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 分页
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2020-11-30 16:26
 **/
@Configuration
public class MybatisPlusConfig {
    /**
     * 新的分页插件,一缓和二缓遵循mybatis的规则,需要设置 MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题(该属性会在旧插件移除后一同移除)
     */
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.H2));
        return interceptor;
    }
    @Bean
    public ConfigurationCustomizer configurationCustomizer() {
        return configuration -> configuration.setUseDeprecatedExecutor(false);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/config/ParamOutAspect.java
New file
@@ -0,0 +1,125 @@
package com.panzhihua.service_bracelet.config;
import com.alibaba.fastjson.JSONObject;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.utlis.DateUtils;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.core.LocalVariableTableParameterNameDiscoverer;
import org.springframework.util.ObjectUtils;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.lang.reflect.Method;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
/**
 * 应用模块名称
 * <p>
 * 代码描述
 * <p>
 * 拦截controller,输出入参、响应内容和响应时间 Copyright: Copyright (C) 2021 XXX, Inc. All rights reserved.
 * <p>
 * Company: 成都呐喊信息技术有限公司
 * <p>
 *
 * @author manailin
 * @since 2021/8/24 15:30
 */
@Slf4j
// @Aspect
// @Component
public class ParamOutAspect {
    /**
     * 设定方法的执行时间限制毫秒数
     */
    private long maxReduceTime = 2000;
    @Pointcut("execution (public * com.panzhihua.service_user.api..* (..))||execution (public * com.panzhihua.service_user.service..* (..))")
    public void aspect() {}
    /**
     * [方法描述] 环绕通知,拦截controller,输出请求参数、响应内容和响应时间
     *
     * @param joinPoint aspect()
     * @return java.lang.Object
     * @author manailin
     * @date 2021/8/24 17:04
     */
    @Around("aspect()")
    public Object processLog(ProceedingJoinPoint joinPoint) {
        log.info("进入方法性能检查方法");
        Method method = ((MethodSignature)joinPoint.getSignature()).getMethod();
        String className = joinPoint.getSignature().getDeclaringTypeName();
        // 获取方法名称
        String methodName = method.getName();
        // 获取参数名称
        LocalVariableTableParameterNameDiscoverer paramNames = new LocalVariableTableParameterNameDiscoverer();
        String[] params = paramNames.getParameterNames(method);
        // 获取参数
        Object[] args = joinPoint.getArgs();
        // 过滤掉request和response,不能序列化
        List<Object> filteredArgs = Arrays.stream(args)
            .filter(arg -> (!(arg instanceof HttpServletRequest) && !(arg instanceof HttpServletResponse)))
            .collect(Collectors.toList());
        JSONObject rqsJson = new JSONObject();
        rqsJson.put("rqsMethod", methodName);
        rqsJson.put("rqsTime", DateUtils.getCurrentDateStr_MS());
        if (ObjectUtils.isEmpty(filteredArgs)) {
            rqsJson.put("rqsParams", null);
        } else {
            // 拼接请求参数
            Map<String, Object> rqsParams = IntStream.range(0, filteredArgs.size()).boxed()
                .collect(Collectors.toMap(j -> params[j], j -> filteredArgs.get(j)));
            rqsJson.put("rqsParams", rqsParams);
        }
        log.info(className + ":" + methodName + "请求信息为:" + rqsJson.toJSONString());
        Object resObj = null;
        long startTime = System.currentTimeMillis();
        try {
            // 执行原方法
            resObj = joinPoint.proceed();
        } catch (Throwable e) {
            log.error(className + ":" + methodName + "方法执行异常!", e);
        }
        long endTime = System.currentTimeMillis();
        // 打印耗时的信息
        this.printExecTime(className + ":" + methodName, startTime, endTime);
        if (resObj != null) {
            // 打印返回消息
            log.info(className + ":" + methodName + "响应信息为:" + JSONObject.toJSON(resObj));
            return resObj;
        } else {
            return R.ok();
        }
    }
    /**
     * [方法描述] 打印方法执行耗时的信息,如果超过了一定的时间,才打印
     *
     * @param classAndMethodName
     *            执行方法名
     * @param startTime
     *            执行开始时间
     * @param endTime
     *            执行结束时间
     * @author manailin
     * @date 2021/8/24 17:05
     */
    private void printExecTime(String classAndMethodName, long startTime, long endTime) {
        long diffTime = endTime - startTime;
        if (diffTime > maxReduceTime) {
            log.info(classAndMethodName + " 方法执行耗时:" + diffTime + " ms");
        }
        // TODO 可以集成redis,将每个controller的执行时间追加到redis中,再用定时每周一次同步到库中
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/dao/BraceletEarlyWarningDao.java
New file
@@ -0,0 +1,70 @@
package com.panzhihua.service_bracelet.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
 * 手环用户数据表
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * description: 手环用户数据表
 *
 * @author zzj
 * @since 2022-04-20 14:26:13
 */
@Mapper
public interface BraceletEarlyWarningDao extends BaseMapper<BraceletEarlyWarningDO> {
    /**
     * 新增
     * @return
     */
    Integer addBracelet(@Param("braceletEarlyWarningDO") BraceletEarlyWarningDO braceletEarlyWarningDO);
    /**
     * 更新接口
     * @param braceletEarlyWarningDO
     * @return
     */
    Integer upBracelet(@Param("braceletEarlyWarningDO") BraceletEarlyWarningDO braceletEarlyWarningDO);
    /**
     * 微信处理接口
     * @param braceletEarlyWarningDO
     * @return
     */
    Integer WXdispose(@Param("braceletEarlyWarningDO") BraceletEarlyWarningDO braceletEarlyWarningDO);
    /**
     * 删除数据
     * @return
     */
    Integer delectData(@Param("id") String id);
    /**
     * 分页查询
     * @param page
     * @return
     */
    IPage<BraceletEarlyWarningDO> getList(Page page,
                                          @Param("communityId") String communityId,
                                          @Param("equipmentNumber") String equipmentNumber,
                                          @Param("disposeUserId") String disposeUserId,
                                          @Param("type") String type,
                                          @Param("userName") String userName,
                                          @Param("phone") String phone);
    /**
     * 获取单个详情
     * @param id
     * @return
     */
    BraceletEarlyWarningDO getDetails(@Param("id") String id);
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/dao/BraceletUserDataDao.java
New file
@@ -0,0 +1,68 @@
package com.panzhihua.service_bracelet.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO;
import com.panzhihua.service_bracelet.model.dos.SysUser;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * 手环用户数据表
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * description: 手环用户数据表
 *
 * @author zzj
 * @since 2022-04-20 14:26:13
 */
@Mapper
public interface BraceletUserDataDao extends BaseMapper<BraceletUserDataDO> {
    /**
     * 新增
     * @return
     */
    Integer addBracelet(@Param("braceletUserDataDO") BraceletUserDataDO braceletUserDataDO);
    /**
     * 更新接口
     * @param braceletUserDataDO
     * @return
     */
    Integer upBracelet(@Param("braceletUserDataDO") BraceletUserDataDO braceletUserDataDO);
    /**
     * 删除数据
     * @return
     */
    Integer delectData(@Param("deviceID") String deviceID);
    /**
     * 分页查询
     * @param page
     * @return
     */
    IPage<BraceletUserDataDO> getData(Page page,
                                      @Param("communityId") String communityId,
                                      @Param("userName") String userName,
                                      @Param("phone") String phone);
    /**
     * 获取单个详情
     * @param deviceID
     * @return
     */
    BraceletUserDataDO getDetails(@Param("deviceID") String deviceID);
    /**
     * 处理人
     * @param communityId
     * @return
     */
    List<SysUser> conductorList(@Param("communityId") String communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/model/dos/SysUser.java
New file
@@ -0,0 +1,274 @@
package com.panzhihua.service_bracelet.model.dos;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
 * 用户表 后台用户+小程序用户(SysUser)表实体类
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * description: 用户表 后台用户+小程序用户相关功能
 *
 * @author zzj
 * @since 2022-06-10 15:34:16
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel("用户表 后台用户+小程序用户")
public class SysUser implements Serializable {
    private static final long serialVersionUID = -70884515430727555L;
    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    private Long userId;
    /**
     * 登录账户
     */
    @ApiModelProperty(value = "登录账户")
    private String account;
    /**
     * 登录密码
     */
    @ApiModelProperty(value = "登录密码")
    private String password;
    /**
     * 微信小程序唯一标识
     */
    @ApiModelProperty(value = "微信小程序唯一标识")
    private String openid;
    /**
     * 会话密钥
     */
    @ApiModelProperty(value = "会话密钥")
    private String sessionKey;
    /**
     * 用户在开放平台的唯一标识符
     */
    @ApiModelProperty(value = "用户在开放平台的唯一标识符")
    private String unionid;
    /**
     * 手机号
     */
    @ApiModelProperty(value = "手机号")
    private String phone;
    /**
     * 昵称
     */
    @ApiModelProperty(value = "昵称")
    private String nickName;
    /**
     * 真实名字
     */
    @ApiModelProperty(value = "真实名字")
    private String name;
    /**
     * 社区ID
     */
    @ApiModelProperty(value = "社区ID")
    private Long communityId;
    /**
     * 性别 1 男 2 女
     */
    @ApiModelProperty(value = "性别 1 男 2 女")
    private Object sex;
    /**
     * 身份证号
     */
    @ApiModelProperty(value = "身份证号")
    private String idCard;
    /**
     * 生日
     */
    @ApiModelProperty(value = "生日")
    private Date birthday;
    /**
     * 头像
     */
    @ApiModelProperty(value = "头像")
    private String imageUrl;
    /**
     * 用户类型 1 小程序 2 运营平台 3 社区平台 5 商家后台 6 网格综治APP 7 网格综治后台 8大屏 9城管后台 10 便民服务商家后台
     */
    @ApiModelProperty(value = "用户类型 1 小程序 2 运营平台 3 社区平台 5 商家后台 6 网格综治APP 7 网格综治后台 8大屏 9城管后台 10 便民服务商家后台")
    private Object type;
    /**
     * 职业
     */
    @ApiModelProperty(value = "职业")
    private String job;
    /**
     * 是否志愿者 0 否 1 是
     */
    @ApiModelProperty(value = "是否志愿者 0 否 1 是")
    private Object isVolunteer;
    /**
     * 是否党员 0 否 1 是
     */
    @ApiModelProperty(value = "是否党员 0 否 1 是")
    private Object isPartymember;
    /**
     * 1 启用 2 禁用
     */
    @ApiModelProperty(value = "1 启用 2 禁用")
    private Object status;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 最后登录时间
     */
    @ApiModelProperty(value = "最后登录时间")
    private Date lastLoginTime;
    /**
     * 标签多个用,隔开
     */
    @ApiModelProperty(value = "标签多个用,隔开")
    private String tags;
    /**
     * 家庭id
     */
    @ApiModelProperty(value = "家庭id")
    private Long familyId;
    /**
     * 人脸采集照片url
     */
    @ApiModelProperty(value = "人脸采集照片url")
    private String faceUrl;
    /**
     * 人脸采集审核状态 0 待审核 1 审核通过 2驳回
     */
    @ApiModelProperty(value = "人脸采集审核状态 0 待审核 1 审核通过 2驳回")
    private Integer faceState;
    /**
     * 驳回原因
     */
    @ApiModelProperty(value = "驳回原因")
    private String rejectReson;
    /**
     * 小区id
     */
    @ApiModelProperty(value = "小区id")
    private Object areaId;
    /**
     * 证件照(人相面)照片
     */
    @ApiModelProperty(value = "证件照(人相面)照片")
    private String cardPhotoFront;
    /**
     * 证件照(国徽面)照片
     */
    @ApiModelProperty(value = "证件照(国徽面)照片")
    private String cardPhotoBack;
    /**
     * 户口本
     */
    @ApiModelProperty(value = "户口本")
    private String familyBook;
    /**
     * 连续登陆天数 每天凌晨定时任务更新
     */
    @ApiModelProperty(value = "连续登陆天数 每天凌晨定时任务更新")
    private Integer continuousLandingDays;
    /**
     * 小程序首页是否显示公告(1.是 2.否)
     */
    @ApiModelProperty(value = "小程序首页是否显示公告(1.是 2.否)")
    private Integer isTips;
    /**
     * 网格员工作状态(1.在岗 2.脱岗 3.已下班)
     */
    @ApiModelProperty(value = "网格员工作状态(1.在岗 2.脱岗 3.已下班)")
    private Integer workStatus;
    /**
     * 网格员上班开始时间
     */
    @ApiModelProperty(value = "网格员上班开始时间")
    private Integer workStartTime;
    /**
     * 网格员上班结束时间
     */
    @ApiModelProperty(value = "网格员上班结束时间")
    private Integer workEndTime;
    /**
     * 高龄认证显示提示(1.是 2.否)
     */
    @ApiModelProperty(value = "高龄认证显示提示(1.是 2.否)")
    private Integer bigAgeTips;
    /**
     * 明文密码
     */
    @ApiModelProperty(value = "明文密码")
    private String plaintextPassword;
    /**
     * 街道id
     */
    @ApiModelProperty(value = "街道id")
    private Long streetId;
    /**
     * 绑定单位
     */
    @ApiModelProperty(value = "绑定单位")
    private String relationName;
    private String appId;
    /**
     * 启用状态(1.启用 2.禁用)
     */
    public interface Status{
        int YES = 1;
        int NO = 2;
    }
    private Integer isAccept;
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/service/BraceletEarlyWarningService.java
New file
@@ -0,0 +1,51 @@
package com.panzhihua.service_bracelet.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO;
public interface BraceletEarlyWarningService extends IService<BraceletEarlyWarningDO>
{
    /**
     * 新增
     * @return
     */
    Integer addBracelet(BraceletEarlyWarningDO braceletEarlyWarningDO);
    /**
     * 更新接口
     * @param braceletEarlyWarningDO
     * @return
     */
    Integer upBracelet(BraceletEarlyWarningDO braceletEarlyWarningDO);
    /**
     * 删除数据
     * @return
     */
    Integer delectData(String id);
    /**
     * 分页查询
     * @param page
     * @return
     */
    IPage<BraceletEarlyWarningDO> getList(Page page,String communityId,String equipmentNumber,String disposeUserId,String type,
                                          String userName,String phone);
    /**
     * 获取单个详情
     * @param id
     * @return
     */
    BraceletEarlyWarningDO getDetails(String id);
    /**
     * 微信处理接口
     * @param braceletEarlyWarningDO
     * @return
     */
    Integer WXdispose(BraceletEarlyWarningDO braceletEarlyWarningDO);
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/service/BraceletUserDataService.java
New file
@@ -0,0 +1,57 @@
package com.panzhihua.service_bracelet.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO;
import com.panzhihua.service_bracelet.model.dos.SysUser;
import java.util.List;
public interface BraceletUserDataService extends IService<BraceletUserDataDO>
{
    /**
     * 新增
     * @return
     */
    Integer addBracelet(BraceletUserDataDO braceletUserDataDO);
    /**
     * 更新接口
     * @param braceletUserDataDO
     * @return
     */
    Integer upBracelet(BraceletUserDataDO braceletUserDataDO);
    /**
     * 删除数据
     * @param id
     * @return
     */
    Integer delectData(String id);
    /**
     * 分页查询
     * @param page
     * @param id
     * @return
     */
    IPage<BraceletUserDataDO> getData(Page page,String communityId,
                                      String userName,String phone);
    /**
     * 获取单个详情
     * @param deviceID
     * @return
     */
    BraceletUserDataDO getDetails(String deviceID);
    /**
     * 处理人
     * @param communityId
     * @return
     */
    List<SysUser> conductorList(String communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/service/impl/BraceletEarlyWarningImpl.java
New file
@@ -0,0 +1,49 @@
package com.panzhihua.service_bracelet.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO;
import com.panzhihua.service_bracelet.dao.BraceletEarlyWarningDao;
import com.panzhihua.service_bracelet.service.BraceletEarlyWarningService;
import org.springframework.stereotype.Service;
@Service
public class BraceletEarlyWarningImpl extends ServiceImpl<BraceletEarlyWarningDao, BraceletEarlyWarningDO>
        implements BraceletEarlyWarningService
{
    @Override
    public Integer addBracelet(BraceletEarlyWarningDO braceletEarlyWarningDO) {
        return baseMapper.addBracelet(braceletEarlyWarningDO);
    }
    @Override
    public Integer upBracelet(BraceletEarlyWarningDO braceletEarlyWarningDO) {
        return baseMapper.upBracelet(braceletEarlyWarningDO);
    }
    @Override
    public Integer delectData(String id) {
        return baseMapper.delectData(id);
    }
    @Override
    public IPage<BraceletEarlyWarningDO> getList(Page page, String communityId,String equipmentNumber,
                                                 String disposeUserId,String type,
                                                 String userName,
                                                 String phone) {
        return baseMapper.getList(page,communityId,equipmentNumber,disposeUserId,type, userName, phone);
    }
    @Override
    public BraceletEarlyWarningDO getDetails(String id) {
        return baseMapper.getDetails(id);
    }
    @Override
    public Integer WXdispose(BraceletEarlyWarningDO braceletEarlyWarningDO) {
        return baseMapper.WXdispose(braceletEarlyWarningDO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/java/com/panzhihua/service_bracelet/service/impl/BraceletUserDataImpl.java
New file
@@ -0,0 +1,54 @@
package com.panzhihua.service_bracelet.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO;
import com.panzhihua.service_bracelet.dao.BraceletUserDataDao;
import com.panzhihua.service_bracelet.model.dos.SysUser;
import com.panzhihua.service_bracelet.service.BraceletUserDataService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Slf4j
@Service
public class BraceletUserDataImpl extends ServiceImpl<BraceletUserDataDao, BraceletUserDataDO>
        implements BraceletUserDataService
{
    @Resource
    private BraceletUserDataDao braceletUserDataDao;
    @Override
    public Integer addBracelet(BraceletUserDataDO braceletUserDataDO) {
        return braceletUserDataDao.addBracelet(braceletUserDataDO);
    }
    @Override
    public Integer upBracelet(BraceletUserDataDO braceletUserDataDO) {
        return braceletUserDataDao.upBracelet(braceletUserDataDO);
    }
    @Override
    public Integer delectData(String id) {
        return braceletUserDataDao.delectData(id);
    }
    @Override
    public IPage<BraceletUserDataDO> getData(Page page, String communityId,String userName,String phone) {
        return braceletUserDataDao.getData(page,communityId,userName,phone);
    }
    @Override
    public BraceletUserDataDO getDetails(String deviceID) {
        return braceletUserDataDao.getDetails(deviceID);
    }
    @Override
    public List<SysUser> conductorList(String communityId) {
        return braceletUserDataDao.conductorList(communityId);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/resources/mapper/BraceletEarlyWarning.xml
New file
@@ -0,0 +1,229 @@
<?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.panzhihua.service_bracelet.dao.BraceletEarlyWarningDao">
    <resultMap type="com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO" id="itemMap">
        <result property="id" column="id"/>
        <result property="creationTime" column="creation_time"/>
        <result property="disposeTime" column="dispose_time"/>
        <result property="disposeType" column="dispose_type"/>
        <result property="disposeUserId" column="dispose_user_id"/>
        <result property="equipmentNumber" column="equipment_number"/>
        <result property="earlyWarningType" column="early_warning_type"/>
        <result property="earlyWarningText" column="early_warning_text"/>
        <result property="disposeImgurl" column="dispose_imgurl"/>
        <result property="disposeText" column="dispose_text"/>
        <result property="disposeResult" column="dispose_result"/>
        <result property="communityId" column="community_id"/>
        <result property="updataTime" column="updata_time"/>
        <result property="disposeVideoUrl" column="dispose_video_url"/>
    </resultMap>
    <select id="getList" resultMap="itemMap" >
        select
            id,
            creation_time,
            dispose_time,
            dispose_type,
            dispose_user_id,
            (select name from sys_user where user_id=dispose_user_id) as disposeUserName,
            equipment_number,
            (select bin_phone from bracelet_user_data where device_id=equipment_number) as binPhone,
            (select user_name from bracelet_user_data where device_id=equipment_number) as userName,
            (select address from bracelet_user_data where device_id=equipment_number) as address,
            early_warning_type,
            early_warning_text,
            dispose_imgurl,
            dispose_text,
            dispose_result,
            community_id,
            updata_time,
            dispose_video_url
        from bracelet_early_warning
        <where>
            1=1
            <if test="communityId != null  ">
                and community_id=#{communityId}
            </if>
            <if test="equipmentNumber !=null  ">
                and equipment_number like concat('%',#{equipmentNumber},'%')
            </if>
            <if test="disposeUserId !=null and disposeUserId != '' ">
                and dispose_user_id =#{disposeUserId}
            </if>
            <if test="type !=null and type != '' ">
                and dispose_type =#{type}
            </if>
            <if test="userName !=null and userName != '' ">
                and equipment_number in(select device_id from bracelet_user_data where user_name like concat('%',#{userName},'%'))
            </if>
            <if test="phone !=null and phone != '' ">
                and equipment_number in(select device_id from bracelet_user_data where bin_phone like concat('%',#{phone},'%'))
            </if>
        </where>
    </select>
    <select id="getDetails" resultMap="itemMap" >
        select
            id,
            creation_time,
            dispose_time,
            dispose_type,
            dispose_user_id,
            equipment_number,
            (select name from sys_user where user_id=dispose_user_id) as disposeUserName,
            (select bin_phone from bracelet_user_data where device_id=equipment_number) as binPhone,
            (select user_name from bracelet_user_data where device_id=equipment_number) as userName,
            (select address from bracelet_user_data where device_id=equipment_number) as address,
            early_warning_type,
            early_warning_text,
            dispose_imgurl,
            dispose_text,
            dispose_result,
            community_id,
            updata_time,
            dispose_video_url
        from bracelet_early_warning
        <where>
            <if test="id != null and id != '' ">
                id=#{id}
            </if>
        </where>
    </select>
    <insert id="addBracelet" parameterType="com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO" >
        insert into bracelet_early_warning
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="braceletEarlyWarningDO.disposeType != null">
                `dispose_type`,
            </if>
            <if test="braceletEarlyWarningDO.disposeUserId != null">
                `dispose_user_id`,
            </if>
            <if test="braceletEarlyWarningDO.equipmentNumber != null">
                `equipment_number`,
            </if>
            <if test="braceletEarlyWarningDO.earlyWarningType != null">
                `early_warning_type`,
            </if>
            <if test="braceletEarlyWarningDO.earlyWarningText != null">
                `early_warning_text`,
            </if>
            <if test="braceletEarlyWarningDO.disposeImgurl != null">
                `dispose_imgurl`,
            </if>
            <if test="braceletEarlyWarningDO.disposeText != null">
                `dispose_text`,
            </if>
            <if test="braceletEarlyWarningDO.disposeResult != null">
                `dispose_result`,
            </if>
            <if test="braceletEarlyWarningDO.communityId != null">
                `community_id`,
            </if>
            <if test="braceletEarlyWarningDO.disposeVideoUrl != null">
                `dispose_video_url`,
            </if>
            creation_time
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="braceletEarlyWarningDO.disposeType != null">
                #{braceletEarlyWarningDO.disposeType},
            </if>
            <if test="braceletEarlyWarningDO.disposeUserId != null">
                #{braceletEarlyWarningDO.disposeUserId},
            </if>
            <if test="braceletEarlyWarningDO.equipmentNumber != null">
                #{braceletEarlyWarningDO.equipmentNumber},
            </if>
            <if test="braceletEarlyWarningDO.earlyWarningType != null">
                #{braceletEarlyWarningDO.earlyWarningType},
            </if>
            <if test="braceletEarlyWarningDO.earlyWarningText != null">
                #{braceletEarlyWarningDO.earlyWarningText},
            </if>
            <if test="braceletEarlyWarningDO.disposeImgurl != null">
                #{braceletEarlyWarningDO.disposeImgurl},
            </if>
            <if test="braceletEarlyWarningDO.disposeText != null">
                #{braceletEarlyWarningDO.disposeText},
            </if>
            <if test="braceletEarlyWarningDO.disposeResult != null">
                #{braceletEarlyWarningDO.disposeResult},
            </if>
            <if test="braceletEarlyWarningDO.communityId != null">
                #{braceletEarlyWarningDO.communityId},
            </if>
            <if test="braceletEarlyWarningDO.disposeVideoUrl != null">
                #{braceletEarlyWarningDO.disposeVideoUrl},
            </if>
            sysdate()
        </trim>
    </insert>
    <update id="upBracelet" parameterType="com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO" >
        update bracelet_early_warning
        <set>
            <if test="braceletEarlyWarningDO.disposeType != null">
                `dispose_type`=#{braceletEarlyWarningDO.disposeType},
            </if>
            <if test="braceletEarlyWarningDO.disposeUserId != null">
                `dispose_user_id`=#{braceletEarlyWarningDO.disposeUserId},
            </if>
            <if test="braceletEarlyWarningDO.equipmentNumber != null">
                `equipment_number`=#{braceletEarlyWarningDO.equipmentNumber},
            </if>
            <if test="braceletEarlyWarningDO.earlyWarningType != null">
                `early_warning_type`=#{braceletEarlyWarningDO.earlyWarningType},
            </if>
            <if test="braceletEarlyWarningDO.earlyWarningText != null">
                `early_warning_text`=#{braceletEarlyWarningDO.earlyWarningText},
            </if>
            <if test="braceletEarlyWarningDO.disposeImgurl != null">
                `dispose_imgurl`=#{braceletEarlyWarningDO.disposeImgurl},
            </if>
            <if test="braceletEarlyWarningDO.disposeText != null">
                `dispose_text`=#{braceletEarlyWarningDO.disposeText},
            </if>
            <if test="braceletEarlyWarningDO.disposeResult != null">
                `dispose_result`=#{braceletEarlyWarningDO.disposeResult},
            </if>
            <if test="braceletEarlyWarningDO.communityId != null">
                `community_id`=#{braceletEarlyWarningDO.communityId},
            </if>
            <if test="braceletEarlyWarningDO.disposeVideoUrl != null">
                `dispose_video_url`=#{braceletEarlyWarningDO.disposeVideoUrl},
            </if>
            updata_time=sysdate()
        </set>
        where id = #{braceletEarlyWarningDO.id}
    </update>
    <update id="WXdispose" parameterType="com.panzhihua.common.model.dtos.bracelet.BraceletEarlyWarningDO" >
        update bracelet_early_warning
        <set>
            <if test="braceletEarlyWarningDO.disposeType != null">
                `dispose_type`=#{braceletEarlyWarningDO.disposeType},
            </if>
            <if test="braceletEarlyWarningDO.disposeImgurl != null">
                `dispose_imgurl`=#{braceletEarlyWarningDO.disposeImgurl},
            </if>
            <if test="braceletEarlyWarningDO.disposeText != null">
                `dispose_text`=#{braceletEarlyWarningDO.disposeText},
            </if>
            <if test="braceletEarlyWarningDO.disposeVideoUrl != null">
                `dispose_video_url`=#{braceletEarlyWarningDO.disposeVideoUrl},
            </if>
            dispose_time=sysdate()
        </set>
        where id = #{braceletEarlyWarningDO.id}
    </update>
    <delete id="delectData" parameterType="java.lang.String" >
        delete from bracelet_early_warning
        where id = #{id}
    </delete>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_bracelet/src/main/resources/mapper/BraceletUserDataMapper.xml
New file
@@ -0,0 +1,607 @@
<?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.panzhihua.service_bracelet.dao.BraceletUserDataDao">
    <resultMap type="com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO" id="itemMap">
        <result property="id" column="id"/>
        <result property="deviceType" column="device_type"/>
        <result property="deviceModel" column="device_model"/>
        <result property="deviceId" column="device_id"/>
        <result property="mobile" column="mobile"/>
        <result property="dataType" column="data_type"/>
        <result property="dataId" column="data_id"/>
        <result property="time" column="time"/>
        <result property="pm" column="pm"/>
        <result property="pcp" column="pcp"/>
        <result property="pdp" column="pdp"/>
        <result property="etg" column="etg"/>
        <result property="step" column="step"/>
        <result property="lng" column="lng"/>
        <result property="lat" column="lat"/>
        <result property="mode" column="mode"/>
        <result property="elec" column="elec"/>
        <result property="onoff" column="onoff"/>
        <result property="creationTime" column="creation_time"/>
        <result property="updataTime" column="updata_time"/>
        <result property="communityId" column="community_id"/>
        <result property="userName" column="user_name"/>
        <result property="ageNum" column="age_num"/>
        <result property="sex" column="sex"/>
        <result property="identityCard" column="identity_card"/>
        <result property="address" column="address"/>
        <result property="addLng" column="add_lng"/>
        <result property="addLat" column="add_lat"/>
        <result property="binPhone" column="bin_phone"/>
        <result property="emergencyContact" column="emergency_contact"/>
        <result property="lowHeartRate" column="low_heart_rate"/>
        <result property="tallHeartRate" column="tall_heart_rate"/>
        <result property="lowAnimalHeat" column="low_animal_heat"/>
        <result property="tallAnimalHeat" column="tall_animal_heat"/>
        <result property="lowTensionFloor" column="low_tension_floor"/>
        <result property="lowTensionUpperLimit" column="low_tension_upper_limit"/>
        <result property="highPressureFloor" column="high_pressure_floor"/>
        <result property="highPressureUpperLimit" column="high_pressure_upper_limit"/>
        <result property="isAbnormal" column="is_abnormal"/>
        <result property="sgtel1" column="sgtel1"/>
        <result property="sgtel2" column="sgtel2"/>
        <result property="sgtel3" column="sgtel3"/>
        <result property="detailAddress" column="detail_address"/>
    </resultMap>
    <select id="getData" resultMap="itemMap" >
        select
            id,
            device_type,
            device_model,
            device_id,
            mobile,
            data_type,
            data_id,
            time,
            pm,
            pcp,
            pdp,
            etg,
            step,
            lng,
            lat,
            mode,
            elec,
            onoff,
            community_id,
            creation_time,
            updata_time,
            user_name,
            age_num,
            sex,
            identity_card,
            address,
            add_lng,
            add_lat,
            bin_phone,
            emergency_contact,
            low_heart_rate,
            tall_heart_rate,
            low_animal_heat,
            tall_animal_heat,
            low_tension_floor,
            low_tension_upper_limit,
            high_pressure_floor,
            high_pressure_upper_limit,
            is_abnormal,
            sgtel1,
            sgtel2,
            sgtel3,
            detail_address
        from bracelet_user_data
        <where>
            1=1
            <if test="communityId != null and communityId != &quot;&quot; ">
                and community_id=#{communityId}
            </if>
            <if test="userName !=null and communityId != &quot;&quot; ">
                and user_name like concat('%',#{userName},'%')
            </if>
            <if test="phone !=null and phone != &quot;&quot; ">
                and bin_phone like concat('%',#{phone},'%')
            </if>
        </where>
    </select>
    <select id="getDetails" resultMap="itemMap" >
        select
            id,
            device_type,
            device_model,
            device_id,
            mobile,
            data_type,
            data_id,
            time,
            pm,
            pcp,
            pdp,
            etg,
            step,
            lng,
            lat,
            mode,
            elec,
            onoff,
            community_id,
            creation_time,
            updata_time,
            user_name,
            age_num,
            sex,
            identity_card,
            address,
            add_lng,
            add_lat,
            bin_phone,
            emergency_contact,
            low_heart_rate,
            tall_heart_rate,
            low_animal_heat,
            tall_animal_heat,
            low_tension_floor,
            low_tension_upper_limit,
            high_pressure_floor,
            high_pressure_upper_limit,
            is_abnormal,
            sgtel1,
            sgtel2,
            sgtel3,
            detail_address
        from bracelet_user_data
        <where>
            <if test="deviceID != null">
                device_id=#{deviceID}
            </if>
        </where>
    </select>
    <insert id="addBracelet" parameterType="com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO" >
        insert into bracelet_user_data
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="braceletUserDataDO.deviceType != null">
                `device_type`,
            </if>
            <if test="braceletUserDataDO.deviceModel != null">
                `device_model`,
            </if>
            <if test="braceletUserDataDO.detailAddress != null">
                `detail_address`,
            </if>
            <if test="braceletUserDataDO.deviceId != null">
                `device_id`,
            </if>
            <if test="braceletUserDataDO.mobile != null">
                `mobile`,
            </if>
            <if test="braceletUserDataDO.dataType != null">
                `data_type`,
            </if>
            <if test="braceletUserDataDO.dataId != null">
                `data_id`,
            </if>
            <if test="braceletUserDataDO.time != null">
                `time`,
            </if>
            <if test="braceletUserDataDO.pm != null">
                `pm`,
            </if>
            <if test="braceletUserDataDO.pcp != null">
                `pcp`,
            </if>
            <if test="braceletUserDataDO.pdp != null">
                `pdp`,
            </if>
            <if test="braceletUserDataDO.etg != null">
                `etg`,
            </if>
            <if test="braceletUserDataDO.step != null">
                `step`,
            </if>
            <if test="braceletUserDataDO.lng != null">
                `lng`,
            </if>
            <if test="braceletUserDataDO.lat != null">
                `lat`,
            </if>
            <if test="braceletUserDataDO.mode != null">
                `mode`,
            </if>
            <if test="braceletUserDataDO.elec != null">
                `elec`,
            </if>
            <if test="braceletUserDataDO.onoff != null">
                `onoff`,
            </if>
            <if test="braceletUserDataDO.communityId != null">
                `community_id`,
            </if>
            <if test="braceletUserDataDO.userName != null" >
                `user_name`,
            </if>
            <if test="braceletUserDataDO.ageNum != null">
                `age_num`,
            </if>
            <if test="braceletUserDataDO.sex != null" >
                `sex`,
            </if>
            <if test="braceletUserDataDO.identityCard != null" >
                `identity_card`,
            </if>
            <if test="braceletUserDataDO.address != null" >
                `address`,
            </if>
            <if test="braceletUserDataDO.addLng != null" >
                `add_lng`,
            </if>
            <if test="braceletUserDataDO.addLat != null" >
                `add_lat`,
            </if>
            <if test="braceletUserDataDO.binPhone != null" >
                `bin_phone`,
            </if>
            <if test="braceletUserDataDO.emergencyContact != null" >
                `emergency_contact`,
            </if>
            <if test="braceletUserDataDO.lowHeartRate != null" >
                `low_heart_rate`,
            </if>
            <if test="braceletUserDataDO.tallHeartRate != null" >
                `tall_heart_rate`,
            </if>
            <if test="braceletUserDataDO.lowAnimalHeat != null" >
                `low_animal_heat`,
            </if>
            <if test="braceletUserDataDO.tallAnimalHeat != null" >
                `tall_animal_heat`,
            </if>
            <if test="braceletUserDataDO.lowTensionFloor != null" >
                `low_tension_floor`,
            </if>
            <if test="braceletUserDataDO.lowTensionUpperLimit != null" >
                `low_tension_upper_limit`,
            </if>
            <if test="braceletUserDataDO.highPressureFloor != null" >
                `high_pressure_floor`,
            </if>
            <if test="braceletUserDataDO.highPressureUpperLimit != null" >
                `high_pressure_upper_limit`,
            </if>
            <if test="braceletUserDataDO.isAbnormal != null" >
                `is_abnormal`,
            </if>
            <if test="braceletUserDataDO.sgtel1 != null" >
                `sgtel1`,
            </if>
            <if test="braceletUserDataDO.sgtel2 != null" >
                `sgtel2`,
            </if>
            <if test="braceletUserDataDO.sgtel3 != null" >
                `sgtel3`,
            </if>
            creation_time
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="braceletUserDataDO.deviceType != null">
                #{braceletUserDataDO.deviceType},
            </if>
            <if test="braceletUserDataDO.deviceModel != null">
                #{braceletUserDataDO.deviceModel},
            </if>
            <if test="braceletUserDataDO.detailAddress != null">
                #{braceletUserDataDO.detailAddress},
            </if>
            <if test="braceletUserDataDO.deviceId != null">
                #{braceletUserDataDO.deviceId},
            </if>
            <if test="braceletUserDataDO.mobile != null">
                #{braceletUserDataDO.mobile},
            </if>
            <if test="braceletUserDataDO.dataType != null">
                #{braceletUserDataDO.dataType},
            </if>
            <if test="braceletUserDataDO.dataId != null">
                #{braceletUserDataDO.dataId},
            </if>
            <if test="braceletUserDataDO.time != null">
                #{braceletUserDataDO.time},
            </if>
            <if test="braceletUserDataDO.pm != null">
                #{braceletUserDataDO.pm},
            </if>
            <if test="braceletUserDataDO.pcp != null">
                #{braceletUserDataDO.pcp},
            </if>
            <if test="braceletUserDataDO.pdp != null">
                #{braceletUserDataDO.pdp},
            </if>
            <if test="braceletUserDataDO.etg != null">
                #{braceletUserDataDO.etg},
            </if>
            <if test="braceletUserDataDO.step != null">
                #{braceletUserDataDO.step},
            </if>
            <if test="braceletUserDataDO.lng != null">
                #{braceletUserDataDO.lng},
            </if>
            <if test="braceletUserDataDO.lat != null">
                #{braceletUserDataDO.lat},
            </if>
            <if test="braceletUserDataDO.mode != null">
                #{braceletUserDataDO.mode},
            </if>
            <if test="braceletUserDataDO.elec != null">
                #{braceletUserDataDO.elec},
            </if>
            <if test="braceletUserDataDO.onoff != null">
                #{braceletUserDataDO.onoff},
            </if>
            <if test="braceletUserDataDO.communityId != null">
                #{braceletUserDataDO.communityId},
            </if>
            <if test="braceletUserDataDO.userName != null" >
                #{braceletUserDataDO.userName},
            </if>
            <if test="braceletUserDataDO.ageNum != null">
                #{braceletUserDataDO.ageNum},
            </if>
            <if test="braceletUserDataDO.sex != null" >
                #{braceletUserDataDO.sex},
            </if>
            <if test="braceletUserDataDO.identityCard != null" >
                #{braceletUserDataDO.identityCard},
            </if>
            <if test="braceletUserDataDO.address != null" >
                #{braceletUserDataDO.address},
            </if>
            <if test="braceletUserDataDO.addLng != null" >
                #{braceletUserDataDO.addLng},
            </if>
            <if test="braceletUserDataDO.addLat != null" >
                #{braceletUserDataDO.addLat},
            </if>
            <if test="braceletUserDataDO.binPhone != null" >
                #{braceletUserDataDO.binPhone},
            </if>
            <if test="braceletUserDataDO.emergencyContact != null" >
                #{braceletUserDataDO.emergencyContact},
            </if>
            <if test="braceletUserDataDO.lowHeartRate != null" >
                #{braceletUserDataDO.lowHeartRate},
            </if>
            <if test="braceletUserDataDO.tallHeartRate != null" >
                #{braceletUserDataDO.tallHeartRate},
            </if>
            <if test="braceletUserDataDO.lowAnimalHeat != null" >
                #{braceletUserDataDO.lowAnimalHeat},
            </if>
            <if test="braceletUserDataDO.tallAnimalHeat != null" >
                #{braceletUserDataDO.tallAnimalHeat},
            </if>
            <if test="braceletUserDataDO.lowTensionFloor != null" >
                #{braceletUserDataDO.lowTensionFloor},
            </if>
            <if test="braceletUserDataDO.lowTensionUpperLimit != null" >
                #{braceletUserDataDO.lowTensionUpperLimit},
            </if>
            <if test="braceletUserDataDO.highPressureFloor != null" >
                #{braceletUserDataDO.highPressureFloor},
            </if>
            <if test="braceletUserDataDO.highPressureUpperLimit != null" >
                #{braceletUserDataDO.highPressureUpperLimit},
            </if>
            <if test="braceletUserDataDO.isAbnormal != null" >
                #{braceletUserDataDO.isAbnormal},
            </if>
            <if test="braceletUserDataDO.sgtel1 != null" >
                #{braceletUserDataDO.sgtel1},
            </if>
            <if test="braceletUserDataDO.sgtel2 != null" >
                #{braceletUserDataDO.sgtel2},
            </if>
            <if test="braceletUserDataDO.sgtel3 != null" >
                #{braceletUserDataDO.sgtel3},
            </if>
            sysdate()
        </trim>
    </insert>
    <update id="upBracelet" parameterType="com.panzhihua.common.model.dtos.bracelet.BraceletUserDataDO" >
        update bracelet_user_data
        <set>
            <if test="braceletUserDataDO.deviceType != null">
                `device_type`=#{braceletUserDataDO.deviceType},
            </if>
            <if test="braceletUserDataDO.communityId != null">
                `community_id`=#{braceletUserDataDO.communityId},
            </if>
            <if test="braceletUserDataDO.deviceModel != null">
                `device_model`=#{braceletUserDataDO.deviceModel},
            </if>
            <if test="braceletUserDataDO.deviceId != null">
                `device_id`=#{braceletUserDataDO.deviceId},
            </if>
            <if test="braceletUserDataDO.mobile != null">
                `mobile`=#{braceletUserDataDO.mobile},
            </if>
            <if test="braceletUserDataDO.dataType != null">
                `data_type`=#{braceletUserDataDO.dataType},
            </if>
            <if test="braceletUserDataDO.dataId != null">
                `data_id`=#{braceletUserDataDO.dataId},
            </if>
            <if test="braceletUserDataDO.time != null">
                `time`=#{braceletUserDataDO.time},
            </if>
            <if test="braceletUserDataDO.pm != null">
                `pm`=#{braceletUserDataDO.pm},
            </if>
            <if test="braceletUserDataDO.pcp != null">
                `pcp`=#{braceletUserDataDO.pcp},
            </if>
            <if test="braceletUserDataDO.pdp != null">
                `pdp`=#{braceletUserDataDO.pdp},
            </if>
            <if test="braceletUserDataDO.etg != null">
                `etg`=#{braceletUserDataDO.etg},
            </if>
            <if test="braceletUserDataDO.step != null">
                `step`=#{braceletUserDataDO.step},
            </if>
            <if test="braceletUserDataDO.lng != null">
                `lng`=#{braceletUserDataDO.lng},
            </if>
            <if test="braceletUserDataDO.lat != null">
                `lat`=#{braceletUserDataDO.lat},
            </if>
            <if test="braceletUserDataDO.mode != null">
                `mode`=#{braceletUserDataDO.mode},
            </if>
            <if test="braceletUserDataDO.elec != null">
                `elec`=#{braceletUserDataDO.elec},
            </if>
            <if test="braceletUserDataDO.onoff != null">
                `onoff`=#{braceletUserDataDO.onoff},
            </if>
            <if test="braceletUserDataDO.userName != null" >
                `user_name`=#{braceletUserDataDO.userName},
            </if>
            <if test="braceletUserDataDO.ageNum != null">
                `age_num`=#{braceletUserDataDO.ageNum},
            </if>
            <if test="braceletUserDataDO.sex != null" >
                `sex`=#{braceletUserDataDO.sex},
            </if>
            <if test="braceletUserDataDO.identityCard != null" >
                `identity_card`=#{braceletUserDataDO.identityCard},
            </if>
            <if test="braceletUserDataDO.address != null" >
                `address`=#{braceletUserDataDO.address},
            </if>
            <if test="braceletUserDataDO.addLng != null" >
                `add_lng`=#{braceletUserDataDO.addLng},
            </if>
            <if test="braceletUserDataDO.addLat != null" >
                `add_lat`=#{braceletUserDataDO.addLat},
            </if>
            <if test="braceletUserDataDO.binPhone != null" >
                `bin_phone`=#{braceletUserDataDO.binPhone},
            </if>
            <if test="braceletUserDataDO.emergencyContact != null" >
                `emergency_contact`=#{braceletUserDataDO.emergencyContact},
            </if>
            <if test="braceletUserDataDO.detailAddress != null">
                `detail_address`=#{braceletUserDataDO.detailAddress},
            </if>
            <if test="braceletUserDataDO.lowHeartRate != null" >
                `low_heart_rate`=#{braceletUserDataDO.lowHeartRate},
            </if>
            <if test="braceletUserDataDO.tallHeartRate != null" >
                `tall_heart_rate`=#{braceletUserDataDO.tallHeartRate},
            </if>
            <if test="braceletUserDataDO.lowAnimalHeat != null" >
                `low_animal_heat`=#{braceletUserDataDO.lowAnimalHeat},
            </if>
            <if test="braceletUserDataDO.tallAnimalHeat != null" >
                `tall_animal_heat`=#{braceletUserDataDO.tallAnimalHeat},
            </if>
            <if test="braceletUserDataDO.lowTensionFloor != null" >
                `low_tension_floor`=#{braceletUserDataDO.lowTensionFloor},
            </if>
            <if test="braceletUserDataDO.lowTensionUpperLimit != null" >
                `low_tension_upper_limit`=#{braceletUserDataDO.lowTensionUpperLimit},
            </if>
            <if test="braceletUserDataDO.highPressureFloor != null" >
                `high_pressure_floor`=#{braceletUserDataDO.highPressureFloor},
            </if>
            <if test="braceletUserDataDO.highPressureUpperLimit != null" >
                `high_pressure_upper_limit`=#{braceletUserDataDO.highPressureUpperLimit},
            </if>
            <if test="braceletUserDataDO.isAbnormal != null" >
                `is_abnormal`=#{braceletUserDataDO.isAbnormal},
            </if>
            <if test="braceletUserDataDO.sgtel1 != null" >
                `sgtel1`= #{braceletUserDataDO.sgtel1},
            </if>
            <if test="braceletUserDataDO.sgtel2 != null" >
                `sgtel2`= #{braceletUserDataDO.sgtel2},
            </if>
            <if test="braceletUserDataDO.sgtel3 != null" >
                `sgtel3`= #{braceletUserDataDO.sgtel3},
            </if>
            updata_time=sysdate()
        </set>
        where device_id = #{braceletUserDataDO.deviceId}
    </update>
    <delete id="delectData" parameterType="java.lang.String" >
        delete from bracelet_user_data
        where device_id = #{deviceID}
    </delete>
    <select id="conductorList" resultType="com.panzhihua.service_bracelet.model.dos.SysUser">
        select sys_user.user_id,
               sys_user.account,
               sys_user.password,
               sys_user.openid,
               sys_user.session_key,
               sys_user.unionid,
               sys_user.phone,
               sys_user.nick_name,
               sys_user.community_id,
               sys_user.sex,
               sys_user.id_card,
               sys_user.birthday,
               sys_user.image_url,
               sys_user.type,
               sys_user.job,
               sys_user.is_volunteer,
               sys_user.is_partymember,
               sys_user.status,
               sys_user.create_at,
               sys_user.last_login_time,
               sys_user.tags,
               sys_user.family_id,
               sys_user.face_url,
               sys_user.face_state,
               sys_user.reject_reson,
               sys_user.area_id,
               sys_user.card_photo_front,
               sys_user.card_photo_back,
               sys_user.family_book,
               sys_user.continuous_landing_days,
               sys_user.is_tips,
               sys_user.work_status,
               sys_user.work_start_time,
               sys_user.work_end_time,
               sys_user.big_age_tips,
               sys_user.plaintext_password,
               sys_user.street_id,
               sys_user.relation_name,
               sys_user.app_id,
               sys_user.is_accept,
               sys_user.binding_check_unit_id,
               sys_user.is_organization,
               caepm.name as name
        from sys_user
        LEFT JOIN com_pb_service_team as caepm on (sys_user.phone=caepm.phone)
        WHERE sys_user.community_id=#{communityId} and sys_user.type=1 and sys_user.phone=caepm.phone
    </select>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/bootstrap.yml
@@ -35,4 +35,9 @@
  metrics:
    tags:
      application: equipment
      application: equipment
access:
  username: 37082443
  password: 654321