15 changed files with 974 additions and 0 deletions
@ -0,0 +1,30 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.dto; |
||||||
|
|
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
import java.io.Serializable; |
||||||
|
|
||||||
|
/** |
||||||
|
* @Author: Mak |
||||||
|
* @Description: 下行指令返回值 |
||||||
|
* @Date: 2021/9/23 |
||||||
|
* @Modified by: |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class DownCmdParam implements Serializable { |
||||||
|
|
||||||
|
// 当前指令操作序号
|
||||||
|
private String ts; |
||||||
|
|
||||||
|
// 下行指令
|
||||||
|
private Integer cmd; |
||||||
|
|
||||||
|
// 指令执行的结果状态(0.成功 1.失败)
|
||||||
|
private Integer status; |
||||||
|
|
||||||
|
// 指纹ID / 指纹IDs,多个指纹以英文逗号隔开
|
||||||
|
private String data; |
||||||
|
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,23 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.dto; |
||||||
|
|
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
import java.io.Serializable; |
||||||
|
|
||||||
|
/** |
||||||
|
* @Author: Mak |
||||||
|
* @Description: 变动rfids参数 |
||||||
|
* @Date: 2021/9/23 |
||||||
|
* @Modified by: |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class RfidsParam implements Serializable { |
||||||
|
|
||||||
|
// 上报的RFID标签
|
||||||
|
private String rfid; |
||||||
|
|
||||||
|
// 变动类型(1.进 2.出)
|
||||||
|
private Integer type; |
||||||
|
|
||||||
|
} |
@ -0,0 +1,75 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.dto; |
||||||
|
|
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
import java.io.Serializable; |
||||||
|
|
||||||
|
/** |
||||||
|
* @Author: Mak |
||||||
|
* @Description: 上行指令参数 |
||||||
|
* @Date: 2021/9/23 |
||||||
|
* @Modified by: |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class UpCmdParam implements Serializable { |
||||||
|
|
||||||
|
// 设备编号
|
||||||
|
private String code; |
||||||
|
// 上行指令代码
|
||||||
|
private Integer cmd; |
||||||
|
|
||||||
|
// 4G卡唯一标识号iccid
|
||||||
|
private String iccid; |
||||||
|
|
||||||
|
// 指纹ID
|
||||||
|
private String fid; |
||||||
|
|
||||||
|
// 元件异常类型(1.指纹锁 2.制冷片 3.温湿度 4.4G通讯 5.倾斜度 6.语音)
|
||||||
|
private Integer wrong; |
||||||
|
|
||||||
|
// 上报的RFID标签,多个以英文逗号隔开
|
||||||
|
private String rfids; |
||||||
|
|
||||||
|
/** |
||||||
|
* 以下为心跳上报数据 |
||||||
|
*/ |
||||||
|
/*//设备温度
|
||||||
|
private String temp; |
||||||
|
//设备湿度
|
||||||
|
private String damp; |
||||||
|
//经度
|
||||||
|
private String lng; |
||||||
|
//纬度
|
||||||
|
private String lat; |
||||||
|
//剩余电量
|
||||||
|
private String power; |
||||||
|
//倾斜角度(x轴)
|
||||||
|
private String tiltX; |
||||||
|
//倾斜角度(y轴)
|
||||||
|
private String tiltY; |
||||||
|
//震动能量值(值越大倾斜越大)
|
||||||
|
private String energy;*/ |
||||||
|
|
||||||
|
//设备温度
|
||||||
|
private String tp; |
||||||
|
//设备湿度
|
||||||
|
private String dp; |
||||||
|
//经度
|
||||||
|
private String lg; |
||||||
|
//纬度
|
||||||
|
private String lt; |
||||||
|
//剩余电量
|
||||||
|
private String pw; |
||||||
|
//倾斜角度(x轴)
|
||||||
|
private String tx; |
||||||
|
//倾斜角度(y轴)
|
||||||
|
private String ty; |
||||||
|
//震动能量值(值越大倾斜越大)
|
||||||
|
private String eg; |
||||||
|
//锁状态 (0.关 1.开)
|
||||||
|
private Integer os; |
||||||
|
//制冷状态(0.未制冷 1.已制冷)
|
||||||
|
private Integer cs; |
||||||
|
|
||||||
|
} |
@ -0,0 +1,33 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.vo; |
||||||
|
|
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
import java.io.Serializable; |
||||||
|
|
||||||
|
@Data |
||||||
|
public class DownCmdVo implements Serializable { |
||||||
|
|
||||||
|
// 时间戳 - 用于下行指令的唯一标识
|
||||||
|
private String ts; |
||||||
|
|
||||||
|
// 下行指令代码
|
||||||
|
private Integer cmd; |
||||||
|
|
||||||
|
// 指纹id
|
||||||
|
//private String fid;
|
||||||
|
|
||||||
|
// 指纹id/语音播报内容
|
||||||
|
private String data; |
||||||
|
|
||||||
|
//温度最低警报值
|
||||||
|
private Double tempMin; |
||||||
|
//温度最高警报值
|
||||||
|
private Double tempMax; |
||||||
|
//rfid每隔多少分钟上报一次所有标签
|
||||||
|
private Integer rfidMin; |
||||||
|
//每隔多少秒上报一次数据
|
||||||
|
private Integer beat; |
||||||
|
//设备状态 (1.已连接 2.已断开 3.已休眠)
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,23 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.vo; |
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
import java.io.Serializable; |
||||||
|
|
||||||
|
/** |
||||||
|
* 物联网卡管理(EquipBoxCard)表实体类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2022-02-13 12:06:29 |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class EquipBoxCardVo implements Serializable { |
||||||
|
|
||||||
|
private Integer cardId; |
||||||
|
|
||||||
|
private String iccid; |
||||||
|
|
||||||
|
private String card; |
||||||
|
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,25 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.vo; |
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
import java.io.Serializable; |
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱设备信息(EquipBox)表实体类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-14 19:07:07 |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class EquipBoxConfigVo implements Serializable { |
||||||
|
|
||||||
|
//温度最低警报值
|
||||||
|
private Double tempMin; |
||||||
|
//温度最高警报值
|
||||||
|
private Double tempMax; |
||||||
|
//rfid每隔多少分钟上报一次所有标签
|
||||||
|
private Integer rfidMin; |
||||||
|
//每隔多少秒上报一次数据
|
||||||
|
private Integer beat; |
||||||
|
|
||||||
|
} |
@ -0,0 +1,223 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.*; |
||||||
|
import com.cloud.kicc.commonbiz.api.constant.EquipConstants; |
||||||
|
import com.cloud.kicc.commonbiz.api.dto.DownCmdParam; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBox; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxRecord; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxUser; |
||||||
|
import com.cloud.kicc.commonbiz.api.enums.CmdEnum; |
||||||
|
import com.cloud.kicc.commonbiz.api.enums.CmdStatusEnum; |
||||||
|
import com.cloud.kicc.commonbiz.api.vo.DownCmdVo; |
||||||
|
|
||||||
|
import lombok.AllArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱下行指令服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-14 19:07:07 |
||||||
|
*/ |
||||||
|
|
||||||
|
@Service |
||||||
|
@Slf4j |
||||||
|
@AllArgsConstructor |
||||||
|
|
||||||
|
public class BoxDownCmdServiceImpl implements BoxDownCmdService { |
||||||
|
|
||||||
|
private final EquipBoxService equipBoxService; |
||||||
|
|
||||||
|
private final EquipBoxUserService equipBoxUserService; |
||||||
|
|
||||||
|
private final EquipBoxRecordService equipBoxRecordService; |
||||||
|
|
||||||
|
private final DownCmdService downCmdService; |
||||||
|
|
||||||
|
/* public BoxDownCmdServiceImpl(DownCmdService downCmdService,EquipBoxRecordService equipBoxRecordService, |
||||||
|
EquipBoxUserService equipBoxUserService,EquipBoxService equipBoxService){ |
||||||
|
|
||||||
|
this.downCmdService = downCmdService; |
||||||
|
this.equipBoxRecordService=equipBoxRecordService; |
||||||
|
this.equipBoxUserService=equipBoxUserService; |
||||||
|
this.equipBoxService=equipBoxService; |
||||||
|
}*/ |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean sendVoiceToEquipBox(String boxId, String data) { |
||||||
|
EquipBox equipBox = equipBoxService.getById(boxId); |
||||||
|
// 发送语音消息给标本箱
|
||||||
|
DownCmdVo vo = new DownCmdVo(); |
||||||
|
vo.setCmd(CmdEnum.VOICE_D.getCode()); |
||||||
|
vo.setData(data); |
||||||
|
String rtn = downCmdService.downCmdToBox(equipBox.getBoxCode(), vo); |
||||||
|
if (rtn != null){ |
||||||
|
// 记录操作日志
|
||||||
|
vo.setTs(rtn); |
||||||
|
equipBoxRecordService.addData(equipBox.getBoxId(),vo,null); |
||||||
|
} |
||||||
|
return rtn != null; |
||||||
|
//return false;
|
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean changeEquipUser(String boxUserId, Integer cmd) { |
||||||
|
EquipBoxUser boxUser = equipBoxUserService.getById(boxUserId); |
||||||
|
|
||||||
|
EquipBox equipBox = equipBoxService.getById(boxUser.getBoxId()); |
||||||
|
|
||||||
|
// 新增/删除指纹
|
||||||
|
DownCmdVo vo = new DownCmdVo(); |
||||||
|
vo.setCmd(cmd); |
||||||
|
if (cmd == CmdEnum.DEL_FID_D.getCode() || cmd == CmdEnum.DISABLE_FID_D.getCode() |
||||||
|
|| cmd == CmdEnum.ENABLE_FID_D.getCode()){ |
||||||
|
vo.setData(boxUser.getFid()); |
||||||
|
} |
||||||
|
String rtn = downCmdService.downCmdToBox(equipBox.getBoxCode(), vo); |
||||||
|
if (rtn != null){ |
||||||
|
// 记录操作日志
|
||||||
|
vo.setTs(rtn); |
||||||
|
equipBoxRecordService.addData(equipBox.getBoxId(),vo,boxUserId); |
||||||
|
} |
||||||
|
return rtn != null; |
||||||
|
//return false;
|
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean downCmdToEquipBox(String boxId, Integer cmd, String data) { |
||||||
|
EquipBox equipBox = equipBoxService.getById(boxId); |
||||||
|
|
||||||
|
// 下发参数
|
||||||
|
DownCmdVo vo = new DownCmdVo(); |
||||||
|
vo.setCmd(cmd); |
||||||
|
|
||||||
|
// 不同指令的参数解析
|
||||||
|
if (cmd == CmdEnum.RESET_D.getCode()){ |
||||||
|
// 重置标本箱配置信息
|
||||||
|
vo.setTempMax(equipBox.getTempMax()); |
||||||
|
vo.setTempMin(equipBox.getTempMin()); |
||||||
|
vo.setRfidMin(equipBox.getRfidMin()); |
||||||
|
vo.setBeat(equipBox.getBeat()); |
||||||
|
}else if(cmd == CmdEnum.VOICE_D.getCode() || cmd == CmdEnum.DEL_FID_D.getCode() |
||||||
|
|| cmd == CmdEnum.DISABLE_FID_D.getCode() || cmd == CmdEnum.ENABLE_FID_D.getCode()){ |
||||||
|
vo.setData(data); |
||||||
|
} |
||||||
|
|
||||||
|
String rtn = downCmdService.downCmdToBox(equipBox.getBoxCode(), vo); |
||||||
|
if (rtn != null){ |
||||||
|
// 记录操作日志
|
||||||
|
vo.setTs(rtn); |
||||||
|
equipBoxRecordService.addData(equipBox.getBoxId(),vo,null); |
||||||
|
} |
||||||
|
return rtn != null; |
||||||
|
//return false;
|
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean handleDownCmdResult(DownCmdParam downParam) { |
||||||
|
// 查询当前记录是否存在 - 状态为正常且指令状态不等于成功的记录
|
||||||
|
LambdaQueryWrapper<EquipBoxRecord> wrapper = new LambdaQueryWrapper<>(); |
||||||
|
wrapper.eq(EquipBoxRecord::getTimestamp,downParam.getTs()) |
||||||
|
.eq(EquipBoxRecord::getCmd,downParam.getCmd()) |
||||||
|
.ne(EquipBoxRecord::getCmdStatus, CmdStatusEnum.SUCCESS.getCode()); |
||||||
|
EquipBoxRecord boxRecord = equipBoxRecordService.getOne(wrapper); |
||||||
|
if (boxRecord == null){ |
||||||
|
return false; |
||||||
|
} |
||||||
|
|
||||||
|
// 修改指令记录执行成功与否
|
||||||
|
EquipBoxRecord updateRecord = new EquipBoxRecord(); |
||||||
|
updateRecord.setId(boxRecord.getId()); |
||||||
|
|
||||||
|
// 判断客户端返回的指令执行状态是否成功
|
||||||
|
if (downParam.getStatus() == 1){ |
||||||
|
// 执行失败
|
||||||
|
updateRecord.setCmdStatus(CmdStatusEnum.FAIL.getCode()); |
||||||
|
return equipBoxRecordService.updateById(updateRecord); |
||||||
|
} |
||||||
|
|
||||||
|
// 修改标本箱状态
|
||||||
|
EquipBox updateBox = null; |
||||||
|
|
||||||
|
boolean rtn = true; |
||||||
|
Integer cmd = downParam.getCmd(); |
||||||
|
if (cmd == CmdEnum.ADD_FID_D.getCode()){ |
||||||
|
// 新增指纹
|
||||||
|
EquipBoxUser updateUser = new EquipBoxUser(); |
||||||
|
updateUser.setId(boxRecord.getRelationId()); |
||||||
|
updateUser.setFid(downParam.getData()); |
||||||
|
rtn = equipBoxUserService.updateById(updateUser); |
||||||
|
|
||||||
|
}else if (cmd == CmdEnum.DEL_FID_D.getCode()){ |
||||||
|
// 删除指纹
|
||||||
|
LambdaUpdateWrapper<EquipBoxUser> updateWrapper = new LambdaUpdateWrapper<>(); |
||||||
|
updateWrapper.set(EquipBoxUser::getFid,null).eq(EquipBoxUser::getId,boxRecord.getRelationId()); |
||||||
|
rtn = equipBoxUserService.update(updateWrapper); |
||||||
|
}else if (cmd == CmdEnum.ALL_FID_D.getCode()){ |
||||||
|
// 获取所有指纹
|
||||||
|
log.info("获取所有指纹,返回值"+downParam.getData()); |
||||||
|
|
||||||
|
}else if (cmd == CmdEnum.DEL_ALL_FID_D.getCode()){ |
||||||
|
// 删除所有指纹
|
||||||
|
LambdaUpdateWrapper<EquipBoxUser> updateWrapper = new LambdaUpdateWrapper<>(); |
||||||
|
updateWrapper.set(EquipBoxUser::getFid,null).eq(EquipBoxUser::getBoxId,boxRecord.getBoxId()); |
||||||
|
rtn = equipBoxUserService.update(updateWrapper); |
||||||
|
}else if (cmd == CmdEnum.DISABLE_FID_D.getCode()){ |
||||||
|
// 禁用指纹
|
||||||
|
LambdaUpdateWrapper<EquipBoxUser> updateWrapper = new LambdaUpdateWrapper<>(); |
||||||
|
updateWrapper.set(EquipBoxUser::getStatus, EquipConstants.NO_CODE).eq(EquipBoxUser::getId,boxRecord.getRelationId()); |
||||||
|
rtn = equipBoxUserService.update(updateWrapper); |
||||||
|
}else if (cmd == CmdEnum.ENABLE_FID_D.getCode()){ |
||||||
|
// 启用指纹
|
||||||
|
LambdaUpdateWrapper<EquipBoxUser> updateWrapper = new LambdaUpdateWrapper<>(); |
||||||
|
updateWrapper.set(EquipBoxUser::getStatus, EquipConstants.YES_CODE).eq(EquipBoxUser::getId,boxRecord.getRelationId()); |
||||||
|
rtn = equipBoxUserService.update(updateWrapper); |
||||||
|
}else if (cmd == CmdEnum.OPEN_DATA_D.getCode()){ |
||||||
|
// 开启数据上报
|
||||||
|
updateBox = new EquipBox(); |
||||||
|
updateBox.setBoxStatus(1); |
||||||
|
|
||||||
|
}else if (cmd == CmdEnum.CLOSE_DATA_D.getCode()){ |
||||||
|
// 关闭数据上报
|
||||||
|
updateBox = new EquipBox(); |
||||||
|
updateBox.setBoxStatus(3); |
||||||
|
|
||||||
|
}else if (cmd == CmdEnum.OPEN_COLD_D.getCode()){ |
||||||
|
// 开启制冷
|
||||||
|
updateBox = new EquipBox(); |
||||||
|
updateBox.setColdStatus(1); |
||||||
|
|
||||||
|
}else if (cmd == CmdEnum.CLOSE_COLD_D.getCode()){ |
||||||
|
// 关闭制冷
|
||||||
|
updateBox = new EquipBox(); |
||||||
|
updateBox.setColdStatus(0); |
||||||
|
|
||||||
|
}else if (cmd == CmdEnum.OPEN_D.getCode()){ |
||||||
|
// 开锁
|
||||||
|
updateBox = new EquipBox(); |
||||||
|
updateBox.setOpenStatus(1); |
||||||
|
|
||||||
|
}else { |
||||||
|
} |
||||||
|
|
||||||
|
// 修改标本箱各种状态
|
||||||
|
if (updateBox != null){ |
||||||
|
updateBox.setBoxId(boxRecord.getBoxId()); |
||||||
|
rtn = equipBoxService.updateById(updateBox); |
||||||
|
} |
||||||
|
|
||||||
|
// 修改指令记录执行成功与否
|
||||||
|
updateRecord.setCmdStatus(rtn?1:2); |
||||||
|
return equipBoxRecordService.updateById(updateRecord); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,164 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.core.convert.Convert; |
||||||
|
import cn.hutool.core.util.NumberUtil; |
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
||||||
|
import com.cloud.kicc.common.core.constant.CommonConstants; |
||||||
|
import com.cloud.kicc.commonbiz.config.KiccProperties; |
||||||
|
import com.cloud.kicc.commonbiz.service.BoxUpCmdService; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxLogService; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxRfidLogService; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxService; |
||||||
|
import com.cloud.kicc.commonbiz.util.BaiduMapUtils; |
||||||
|
import com.cloud.kicc.commonbiz.util.GpsGaoAndBaidu; |
||||||
|
import com.cloud.kicc.commonbiz.util.Point; |
||||||
|
import com.cloud.kicc.commonbiz.api.constant.EquipConstants; |
||||||
|
import com.cloud.kicc.commonbiz.api.dto.UpCmdParam; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBox; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxLog; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxRfidLog; |
||||||
|
import com.cloud.kicc.commonbiz.api.enums.BoxStatusEnum; |
||||||
|
import com.cloud.kicc.commonbiz.api.enums.CmdEnum; |
||||||
|
import com.cloud.kicc.commonbiz.api.vo.EquipBoxConfigVo; |
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
import java.util.Date; |
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱上行指令服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-14 19:07:07 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Slf4j |
||||||
|
public class BoxUpCmdServiceImpl implements BoxUpCmdService { |
||||||
|
|
||||||
|
private final EquipBoxService equipBoxService; |
||||||
|
|
||||||
|
private final EquipBoxLogService equipBoxLogService; |
||||||
|
|
||||||
|
private final EquipBoxRfidLogService equipBoxRfidLogService; |
||||||
|
|
||||||
|
private final KiccProperties kiccProperties; |
||||||
|
|
||||||
|
@Override |
||||||
|
public String beginTelnet(String iccid) { |
||||||
|
EquipBox box = equipBoxService.getByIccid(iccid); |
||||||
|
|
||||||
|
// 修改箱子状态
|
||||||
|
UpdateWrapper<EquipBox> updateWrapper = new UpdateWrapper<>(); |
||||||
|
updateWrapper.lambda().set(EquipBox::getBoxStatus, BoxStatusEnum.TELNET.getCode()) |
||||||
|
.set(EquipBox::getConnectTime,new Date()).eq(EquipBox::getBoxId,box.getBoxId()); |
||||||
|
boolean rtn = equipBoxService.update(updateWrapper); |
||||||
|
if (rtn){ |
||||||
|
return box.getBoxCode(); |
||||||
|
} |
||||||
|
return null; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public EquipBoxConfigVo getBoxConfig(String boxCode) throws Exception{ |
||||||
|
EquipBox box = equipBoxService.getByCode(boxCode); |
||||||
|
|
||||||
|
return Convert.convert(EquipBoxConfigVo.class, box); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean beatBoxInfo(UpCmdParam param) throws Exception { |
||||||
|
EquipBox equipBox = equipBoxService.getByCode(param.getCode()); |
||||||
|
|
||||||
|
// 更新主表信息
|
||||||
|
EquipBox updateBox = new EquipBox(); |
||||||
|
updateBox.setBoxId(equipBox.getBoxId()); |
||||||
|
// 温度计算 - 临时处理
|
||||||
|
if (StrUtil.isNotBlank(param.getTp())){ |
||||||
|
// 他说如果拔了一根,那根默认就会是-60℃,现在拔了2根,说明系统默认是2个-60℃,原先的技算方式是三个加一起÷3,
|
||||||
|
// 也就是{-60+(-60)+实际温度}÷3=现在显示温度(现在显示是-32.73),倒推实际温度就是,21.83℃
|
||||||
|
// 目前仅有第一版的温度有问题
|
||||||
|
if(equipBox.getBoxId() == "1"){ |
||||||
|
double ttp = NumberUtil.mul(Double.parseDouble(param.getTp()),3) + 120; |
||||||
|
updateBox.setTemp(String.valueOf(NumberUtil.round(ttp,1))); |
||||||
|
}else{ |
||||||
|
updateBox.setTemp(String.valueOf(NumberUtil.round(Double.parseDouble(param.getTp()),1))); |
||||||
|
} |
||||||
|
} |
||||||
|
updateBox.setDamp(param.getDp()); |
||||||
|
// 详细地址
|
||||||
|
if (StrUtil.isNotBlank(param.getLg()) && StrUtil.isNotBlank(param.getLt())){ |
||||||
|
// 如果箱子定位一直未变,为避免重复调用百度api
|
||||||
|
if (StrUtil.isNotBlank(equipBox.getLng()) || StrUtil.isNotBlank(equipBox.getLat()) |
||||||
|
|| !equipBox.getLng().equals(param.getLg()) || !equipBox.getLat().equals(param.getLt())){ |
||||||
|
updateBox.setLng(param.getLg()); |
||||||
|
updateBox.setLat(param.getLt()); |
||||||
|
try { |
||||||
|
Point point = GpsGaoAndBaidu.gpsAddPrecision(param.getLg(), param.getLt()); |
||||||
|
updateBox.setAddr(BaiduMapUtils.getAddress(String.valueOf(point.getLng()),String.valueOf(point.getLat()),kiccProperties.getMapAk())); |
||||||
|
}catch (Exception e){ |
||||||
|
log.error("标本箱心跳上报经纬度转详细地址失败:"+e.getMessage()); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
updateBox.setPower(String.valueOf(NumberUtil.round(Double.parseDouble(param.getPw()),1))); |
||||||
|
|
||||||
|
// 计算倾斜度
|
||||||
|
|
||||||
|
updateBox.setOpenStatus(param.getOs()); |
||||||
|
updateBox.setColdStatus(param.getCs()); |
||||||
|
boolean ret = equipBoxService.updateById(updateBox); |
||||||
|
if (ret){ |
||||||
|
// 记录心跳日志
|
||||||
|
EquipBoxLog boxLog = Convert.convert(EquipBoxLog.class, updateBox); |
||||||
|
boxLog.setBoxId(equipBox.getBoxId()); |
||||||
|
if(StrUtil.isNotBlank(updateBox.getLng()) || StrUtil.isNotBlank(updateBox.getLat()) |
||||||
|
|| StrUtil.isNotBlank(updateBox.getAddr())){ |
||||||
|
boxLog.setLng(param.getLg()); |
||||||
|
boxLog.setLat(param.getLt()); |
||||||
|
boxLog.setAddr(equipBox.getAddr()); |
||||||
|
} |
||||||
|
boxLog.setTiltX(param.getTx()); |
||||||
|
boxLog.setTiltY(param.getTy()); |
||||||
|
boxLog.setEnergy(param.getEg()); |
||||||
|
boxLog.setErrorStatus(equipBox.getErrorStatus()); |
||||||
|
equipBoxLogService.save(boxLog); |
||||||
|
} |
||||||
|
return ret; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean updateBoxState(UpCmdParam param) { |
||||||
|
EquipBox equipBox = equipBoxService.getByCode(param.getCode()); |
||||||
|
|
||||||
|
EquipBox updateBox = new EquipBox(); |
||||||
|
updateBox.setBoxId(equipBox.getBoxId()); |
||||||
|
|
||||||
|
if (param.getCmd() == CmdEnum.OPEN_U.getCode()){ |
||||||
|
//设置开关状态
|
||||||
|
updateBox.setOpenStatus(EquipConstants.YES_CODE); |
||||||
|
}else if (param.getCmd() == CmdEnum.CLOSE_U.getCode()){ |
||||||
|
updateBox.setOpenStatus(EquipConstants.NO_CODE); |
||||||
|
}else if (param.getCmd() == CmdEnum.ERROR_U.getCode()){ |
||||||
|
updateBox.setErrorStatus(CommonConstants.FAIL); |
||||||
|
} |
||||||
|
|
||||||
|
return equipBoxService.updateById(updateBox); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean addBoxRfidLog(UpCmdParam param, Integer rfidType) { |
||||||
|
EquipBox equipBox = equipBoxService.getByCode(param.getCode()); |
||||||
|
EquipBoxRfidLog data = new EquipBoxRfidLog(); |
||||||
|
data.setBoxId(equipBox.getBoxId()); |
||||||
|
data.setRfids(param.getRfids()); |
||||||
|
data.setRfidType(rfidType); |
||||||
|
return equipBoxRfidLogService.save(data); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,44 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
|
||||||
|
import com.cloud.kicc.commonbiz.service.DownCmdService; |
||||||
|
import com.cloud.kicc.commonbiz.api.vo.DownCmdVo; |
||||||
|
|
||||||
|
import lombok.AllArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.slf4j.Logger; |
||||||
|
import org.slf4j.LoggerFactory; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱下行指令服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-14 19:07:07 |
||||||
|
*/ |
||||||
|
@AllArgsConstructor |
||||||
|
@Service |
||||||
|
@Slf4j |
||||||
|
public class DownCmdServiceImpl implements DownCmdService { |
||||||
|
private final Logger logger = LoggerFactory.getLogger(ThreadLocal.class); |
||||||
|
|
||||||
|
@Override |
||||||
|
public String downCmdToBox(String boxCode, DownCmdVo vo){ |
||||||
|
String ts = null; |
||||||
|
try { |
||||||
|
// new Thread().sleep(100);
|
||||||
|
// ClientSocket socket = SocketPool.get(boxCode);
|
||||||
|
// if (socket != null){
|
||||||
|
// ts = System.currentTimeMillis()+"";
|
||||||
|
// vo.setTs(ts);
|
||||||
|
// String msg = JSONObject.toJSONString(vo);
|
||||||
|
// SocketHandler.sendMessage(socket,msg);
|
||||||
|
// }
|
||||||
|
}catch (Exception e){ |
||||||
|
e.printStackTrace(); |
||||||
|
ts = null; |
||||||
|
} |
||||||
|
return ts; |
||||||
|
} |
||||||
|
|
||||||
|
} |
@ -0,0 +1,50 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.core.convert.Convert; |
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||||
|
import com.cloud.kicc.commonbiz.mapper.EquipBoxCardMapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxCardService; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxCard; |
||||||
|
import com.cloud.kicc.commonbiz.api.vo.EquipBoxCardVo; |
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
import java.util.stream.Collectors; |
||||||
|
|
||||||
|
/** |
||||||
|
* 物联网卡管理(EquipBoxCard)表服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2022-02-13 12:06:30 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Slf4j |
||||||
|
public class EquipBoxCardServiceImpl extends ServiceImpl<EquipBoxCardMapper, EquipBoxCard> implements EquipBoxCardService { |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
public List<EquipBoxCardVo> listCardForSelect(Integer isUsed) throws Exception{ |
||||||
|
List<EquipBoxCard> list = this.lambdaQuery() |
||||||
|
.eq(StrUtil.isNotBlank(isUsed.toString()),EquipBoxCard::getIsUsed, isUsed) |
||||||
|
.list(); |
||||||
|
|
||||||
|
return list.stream().map(item -> { |
||||||
|
return Convert.convert(EquipBoxCardVo.class, item); |
||||||
|
}).collect(Collectors.toList()); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
public EquipBoxCard getByIccid(String iccid) { |
||||||
|
return this.lambdaQuery().eq(StrUtil.isNotBlank(iccid),EquipBoxCard::getIccid, iccid).one(); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,38 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||||
|
import com.cloud.kicc.commonbiz.mapper.EquipBoxLogMapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxLogService; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxLog; |
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱心跳日志记录(EquipBoxLog)表服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-17 10:25:07 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Slf4j |
||||||
|
public class EquipBoxLogServiceImpl extends ServiceImpl<EquipBoxLogMapper, EquipBoxLog> implements EquipBoxLogService { |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<EquipBoxLog> listBoxLogs(Integer boxId) { |
||||||
|
LambdaUpdateWrapper<EquipBoxLog> wrapper = new LambdaUpdateWrapper<>(); |
||||||
|
|
||||||
|
//todo: limit 100 ???
|
||||||
|
wrapper.eq(EquipBoxLog::getBoxId,boxId) |
||||||
|
.orderByDesc(EquipBoxLog::getBoxLogId).last("limit 100"); |
||||||
|
return baseMapper.selectList(wrapper); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,71 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject; |
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||||
|
import com.cloud.kicc.commonbiz.mapper.EquipBoxRecordMapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxRecordService; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxService; |
||||||
|
import com.cloud.kicc.commonbiz.api.dto.UpCmdParam; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBox; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxRecord; |
||||||
|
import com.cloud.kicc.commonbiz.api.vo.DownCmdVo; |
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱操作记录(EquipBoxRecord)表服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-15 09:39:47 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Slf4j |
||||||
|
public class EquipBoxRecordServiceImpl extends ServiceImpl<EquipBoxRecordMapper, EquipBoxRecord> implements EquipBoxRecordService { |
||||||
|
|
||||||
|
@Autowired |
||||||
|
EquipBoxService equipBoxService; |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean addData(UpCmdParam param, boolean rtn) { |
||||||
|
EquipBox equipBox = equipBoxService.getByCode(param.getCode()); |
||||||
|
EquipBoxRecord record = new EquipBoxRecord(); |
||||||
|
record.setBoxId(equipBox.getBoxId()); |
||||||
|
record.setCmd(param.getCmd()); |
||||||
|
record.setFid(param.getFid()); |
||||||
|
record.setErrorStatus(param.getWrong()); |
||||||
|
record.setDataJson(JSONObject.toJSONString(param)); |
||||||
|
record.setCmdStatus(rtn?1:2); |
||||||
|
record.setTimestamp(System.currentTimeMillis()+""); |
||||||
|
return this.save(record); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean addData(String boxId, DownCmdVo vo, String relationId) { |
||||||
|
EquipBoxRecord record = new EquipBoxRecord(); |
||||||
|
record.setBoxId(boxId); |
||||||
|
record.setCmd(vo.getCmd()); |
||||||
|
record.setTimestamp(vo.getTs()); |
||||||
|
record.setRelationId(relationId); |
||||||
|
record.setDataJson(JSONObject.toJSONString(vo)); |
||||||
|
return this.save(record); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<EquipBoxRecord> listBoxRecords(String boxId) { |
||||||
|
LambdaUpdateWrapper<EquipBoxRecord> wrapper = new LambdaUpdateWrapper<>(); |
||||||
|
//todo: limit 100 ???
|
||||||
|
wrapper.eq(EquipBoxRecord::getBoxId,boxId) |
||||||
|
.orderByDesc(EquipBoxRecord::getId).last("limit 100"); |
||||||
|
return baseMapper.selectList(wrapper); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,24 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||||
|
import com.cloud.kicc.commonbiz.mapper.EquipBoxRfidLogMapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxRfidLogService; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxRfidLog; |
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱RFIDj记录信息(EquipBoxRfidLog)表服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-25 15:10:34 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Slf4j |
||||||
|
public class EquipBoxRfidLogServiceImpl extends ServiceImpl<EquipBoxRfidLogMapper, EquipBoxRfidLog> implements EquipBoxRfidLogService { |
||||||
|
|
||||||
|
} |
@ -0,0 +1,98 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
||||||
|
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.cloud.kicc.commonbiz.mapper.EquipBoxMapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxCardService; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxService; |
||||||
|
import com.cloud.kicc.commonbiz.api.constant.EquipConstants; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBox; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxCard; |
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱设备信息(EquipBox)表服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-14 19:07:07 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Slf4j |
||||||
|
public class EquipBoxServiceImpl extends ServiceImpl<EquipBoxMapper, EquipBox> implements EquipBoxService { |
||||||
|
|
||||||
|
|
||||||
|
@Autowired |
||||||
|
EquipBoxCardService equipBoxCardService; |
||||||
|
|
||||||
|
@Override |
||||||
|
public EquipBox getByCode(String boxCode) { |
||||||
|
LambdaQueryWrapper<EquipBox> wrapper = new LambdaQueryWrapper<>(); |
||||||
|
wrapper.eq(EquipBox::getBoxCode, boxCode); |
||||||
|
return baseMapper.selectOne(wrapper); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public EquipBox getByIccid(String iccid) { |
||||||
|
EquipBoxCard card = equipBoxCardService.getByIccid(iccid); |
||||||
|
if (card == null){ |
||||||
|
return null; |
||||||
|
} |
||||||
|
LambdaQueryWrapper<EquipBox> wrapper = new LambdaQueryWrapper<>(); |
||||||
|
wrapper.eq(EquipBox::getCardId, card.getId()); |
||||||
|
return baseMapper.selectOne(wrapper); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public EquipBox getData(String id) { |
||||||
|
EquipBox box = baseMapper.selectData(id); |
||||||
|
return box; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean addData(EquipBox param) { |
||||||
|
// 自定义code - 标本箱已限制最长15位
|
||||||
|
boolean rtn = this.save(param); |
||||||
|
param.setBoxCode("B"+param.getBoxId()); |
||||||
|
if (rtn){ |
||||||
|
// 修改物联网卡状态
|
||||||
|
LambdaUpdateWrapper<EquipBoxCard> updateWrapper = new LambdaUpdateWrapper<>(); |
||||||
|
updateWrapper |
||||||
|
.set(EquipBoxCard::getIsUsed, EquipConstants.YES_CODE) |
||||||
|
.eq(EquipBoxCard::getId, param.getCardId()); |
||||||
|
equipBoxCardService.update(updateWrapper); |
||||||
|
} |
||||||
|
return rtn; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean updateStatusByCode(String boxCode, Integer boxStatus, Integer openStatus, Integer coldStatus, Integer warnStatus, Integer errorStatus) { |
||||||
|
LambdaUpdateWrapper<EquipBox> wrapper = new LambdaUpdateWrapper<>(); |
||||||
|
|
||||||
|
wrapper.set(StrUtil.isNotBlank(boxStatus.toString()),EquipBox::getBoxStatus,boxStatus) |
||||||
|
.set(StrUtil.isNotBlank(openStatus.toString()),EquipBox::getOpenStatus,openStatus) |
||||||
|
.set(StrUtil.isNotBlank(coldStatus.toString()),EquipBox::getColdStatus,coldStatus) |
||||||
|
.set(StrUtil.isNotBlank(warnStatus.toString()),EquipBox::getWarnStatus,warnStatus) |
||||||
|
.set(StrUtil.isNotBlank(errorStatus.toString()),EquipBox::getErrorStatus,errorStatus) |
||||||
|
.eq(StrUtil.isNotBlank(boxCode),EquipBox::getBoxCode,boxCode); |
||||||
|
|
||||||
|
return this.update(wrapper); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
public IPage<EquipBox> pageData(Page page, EquipBox param) { |
||||||
|
IPage<EquipBox> rtn = baseMapper.pageQuery(page,param); |
||||||
|
return rtn; |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
@ -0,0 +1,53 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||||
|
import com.cloud.kicc.common.core.api.R; |
||||||
|
import com.cloud.kicc.commonbiz.mapper.EquipBoxUserMapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.EquipBoxUserService; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.EquipBoxUser; |
||||||
|
|
||||||
|
import com.cloud.kicc.system.api.entity.User; |
||||||
|
import com.cloud.kicc.system.api.feign.RemoteUserService; |
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* 标本箱指纹用户信息(EquipBoxUser)表服务实现类 |
||||||
|
* |
||||||
|
* @author Mak |
||||||
|
* @since 2021-09-15 09:40:50 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Slf4j |
||||||
|
public class EquipBoxUserServiceImpl extends ServiceImpl<EquipBoxUserMapper, EquipBoxUser> implements EquipBoxUserService { |
||||||
|
|
||||||
|
|
||||||
|
private final RemoteUserService remoteUserService; |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean addData(EquipBoxUser param) { |
||||||
|
if (StrUtil.isNotBlank(param.getUserId()) && StrUtil.isBlank(param.getUserName())){ |
||||||
|
R<User> byId = remoteUserService.getById(param.getUserId()); |
||||||
|
if (byId.getCode() == 200) { |
||||||
|
param.setUserName(byId.getData().getUserName()); |
||||||
|
} |
||||||
|
} |
||||||
|
return this.save(param); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<EquipBoxUser> listBoxUser(String boxId, String userName) { |
||||||
|
EquipBoxUser param = new EquipBoxUser(); |
||||||
|
param.setBoxId(boxId); |
||||||
|
param.setUserName(userName); |
||||||
|
return baseMapper.listQuery(param); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
Loading…
Reference in new issue