lyfO_o
2021-12-13 19ff5993c13a86934fe29b3a58a88d29258dfda5
货柜预警:判断重复插入
已修改3个文件
21 ■■■■■ 文件已修改
src/main/java/com/nanometer/smartlab/dao/SysAlarmDao.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/dao/SysAlarmDao.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanometer/smartlab/dao/SysAlarmDao.java
@@ -3,9 +3,11 @@
import com.nanometer.smartlab.entity.SysAlarm;
import java.sql.Timestamp;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;
import org.springframework.dao.DataAccessException;
public interface SysAlarmDao {
@@ -16,4 +18,8 @@
    
    public int getSysAlarmTotalCount(Map params);
    
    int selectOne(@Param("containerCode") String containerCode,
                  @Param("controllerCode") String controllerCode,
                  @Param("warningId") String warningId,
                  @Param("warningTime")Timestamp warningTime);
}
src/main/java/com/nanometer/smartlab/dao/SysAlarmDao.xml
@@ -47,4 +47,13 @@
    select count(1) from sys_alarm
    <include refid="queryWhereSql"/>
  </select>
    <select id="selectOne" resultType="java.lang.Integer">
        select count(0)
        from sys_alarm
        where container_code = #{containerCode}
        and warning_id = #{warningId}
        and controller_code =#{controllerCode}
        and warning_time = #{warningTime}
    </select>
</mapper>
src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
@@ -1353,9 +1353,11 @@
            } catch (ParseException e) {
                throw new ApiException(ApiStatus.PARAM_ERR);
            }
            //判断是否重复
            if (sysAlarmDao.selectOne(containerCode, controllerCode, sysAlarm.getWarningId(), sysAlarm.getWarningTime()) > 0) {
                continue;
            }
            sysAlarmDao.insertSysAlarm(sysAlarm);
            try {
                if (enable && "01".equals(warningId)) {
                    SysLaboratory sysLaboratory = sysLaboratoryService.getSysLaboratory(LaboratoryContainer.getLaboratoryId());