接口联调

This commit is contained in:
mashuai 2024-09-26 21:35:06 +08:00
parent 796736ead7
commit 8c91e09c8f
20 changed files with 101 additions and 30 deletions

View File

@ -19,6 +19,7 @@ public enum ExceptionEnum {
SUCCESS(200, "操作成功"), SUCCESS(200, "操作成功"),
SAVE_TO_DATABASE(500, "新增保存失败,请联系管理员"), SAVE_TO_DATABASE(500, "新增保存失败,请联系管理员"),
DELETE_TO_DATABASE(500, "删除失败,请联系管理员"), DELETE_TO_DATABASE(500, "删除失败,请联系管理员"),
DELETE_PROJECT_POWER(1111, "该项目部还关联相应工程,无法删除"),
INVALID_ID_CARD_FORMAT(1004, "身份证号格式不正确"), INVALID_ID_CARD_FORMAT(1004, "身份证号格式不正确"),
UN_BIND_TO_DATABASE(500, "解散失败,请联系管理员"), UN_BIND_TO_DATABASE(500, "解散失败,请联系管理员"),
EXISTENCE_OF_MEMBERS(1005, "班组中还存在成员,无法解散"), EXISTENCE_OF_MEMBERS(1005, "班组中还存在成员,无法解散"),
@ -31,7 +32,8 @@ public enum ExceptionEnum {
NOT_REMOVE_TO_DATABASE(500, "移出班组失败,请联系管理员"), NOT_REMOVE_TO_DATABASE(500, "移出班组失败,请联系管理员"),
INVALID_PHONE_NUMBER_FORMAT(501, "手机号格式不正确"), INVALID_PHONE_NUMBER_FORMAT(501, "手机号格式不正确"),
DELETE_PROJECT_ERROR(502, "该工程关联相应杆塔,无法删除"); DELETE_PROJECT_ERROR(502, "该工程关联相应杆塔,无法删除"),
DELETE_PROJECT_NOT_FOUND(503, "该工程还关联相应班组,无法删除");
private final Integer code; private final Integer code;

View File

@ -91,7 +91,7 @@ public class TbBdDeviceRecordController extends BaseController {
*/ */
@DeleteMapping("/{id}") @DeleteMapping("/{id}")
public AjaxResult deleteById(@PathVariable("id") Long id) { public AjaxResult deleteById(@PathVariable("id") Long id) {
return toAjax(tbBdDeviceRecordService.deleteByPrimaryKey(id)); return tbBdDeviceRecordService.deleteByPrimaryKey(id);
} }

View File

@ -50,4 +50,6 @@ public interface TbBdDeviceRecordMapper {
* @return * @return
*/ */
int deleteById(Long id); int deleteById(Long id);
int queryByDeviceId(Long id);
} }

View File

@ -75,5 +75,12 @@ public interface TbProDepartMapper {
* @return * @return
*/ */
TbProDepart selectByName(TbProDepart tbProDepart); TbProDepart selectByName(TbProDepart tbProDepart);
/**
* 根据项目id查询项目权限
* @param id
* @return
*/
int getProPowerListByProId(Long id);
} }

View File

@ -87,5 +87,19 @@ public interface TbProjectMapper {
List<ProjectAreaGroupVo> getProjectListGroupAreaByTypeCode(@Param("projectTypeCode") Integer projectTypeCode, @Param("areaId") Integer areaId); List<ProjectAreaGroupVo> getProjectListGroupAreaByTypeCode(@Param("projectTypeCode") Integer projectTypeCode, @Param("areaId") Integer areaId);
List<TbProPower> getProPowerListByProId(Integer projectId); List<TbProPower> getProPowerListByProId(Integer projectId);
/**
* 更新工程所属区域
* @param tbProject
* @return
*/
int updateProjectPower(TbProject tbProject);
/**
* 获取工程列表
* @param id
* @return
*/
int getList(Long id);
} }

View File

@ -40,4 +40,6 @@ public interface TbWarnConfigMapper {
* @return * @return
*/ */
TbWarnConfig selectByName(TbWarnConfig record); TbWarnConfig selectByName(TbWarnConfig record);
int queryByDeviceId(Long id);
} }

View File

@ -4,6 +4,7 @@ import java.util.List;
import com.bonus.base.domain.TbBdDeviceRecord; import com.bonus.base.domain.TbBdDeviceRecord;
import com.bonus.base.vo.TbBdDeviceVo; import com.bonus.base.vo.TbBdDeviceVo;
import com.bonus.base.vo.TbDeviceVo; import com.bonus.base.vo.TbDeviceVo;
import com.bonus.common.core.web.domain.AjaxResult;
/** /**
*@PackagePath: com.bonus.base.service *@PackagePath: com.bonus.base.service
@ -14,7 +15,7 @@ import com.bonus.base.vo.TbDeviceVo;
*/ */
public interface TbBdDeviceRecordService{ public interface TbBdDeviceRecordService{
int deleteByPrimaryKey(Long id); AjaxResult deleteByPrimaryKey(Long id);
int deleteByPrimaryKeyIn(List<Long> list); int deleteByPrimaryKeyIn(List<Long> list);

View File

@ -3,6 +3,7 @@ package com.bonus.base.service.impl;
import com.bonus.base.vo.TbBdDeviceVo; import com.bonus.base.vo.TbBdDeviceVo;
import com.bonus.common.core.utils.StringUtils; import com.bonus.common.core.utils.StringUtils;
import com.bonus.common.core.utils.encryption.Sm4Utils; import com.bonus.common.core.utils.encryption.Sm4Utils;
import com.bonus.common.core.web.domain.AjaxResult;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -23,8 +24,13 @@ public class TbBdDeviceRecordServiceImpl implements TbBdDeviceRecordService{
private TbBdDeviceRecordMapper tbBdDeviceRecordMapper; private TbBdDeviceRecordMapper tbBdDeviceRecordMapper;
@Override @Override
public int deleteByPrimaryKey(Long id) { public AjaxResult deleteByPrimaryKey(Long id) {
return tbBdDeviceRecordMapper.deleteByPrimaryKey(id); //判断该边带设备是否被设备绑定
int count = tbBdDeviceRecordMapper.queryByDeviceId(id);
if (count > 0) {
return AjaxResult.error("该边带设备被设备绑定,无法删除");
}
return AjaxResult.success(tbBdDeviceRecordMapper.deleteByPrimaryKey(id));
} }
@Override @Override

View File

@ -160,6 +160,11 @@ public class TbProDepartServiceImpl implements TbProDepartService {
*/ */
@Override @Override
public AjaxResult deleteById(Long id) { public AjaxResult deleteById(Long id) {
//判断项目部下是否有工程绑定若有无法删除
int count = tbProDepartDao.getProPowerListByProId(id);
if (count > 0) {
return AjaxResult.error(ExceptionEnum.DELETE_PROJECT_POWER.getCode(), ExceptionEnum.DELETE_PROJECT_POWER.getMsg());
}
int result = tbProDepartDao.deleteById(id); int result = tbProDepartDao.deleteById(id);
if (result > 0) { if (result > 0) {
return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result); return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result);

View File

@ -107,6 +107,8 @@ public class TbProjectServiceImpl implements TbProjectService {
} }
tbProject.setUpdateUser(SecurityUtils.getUserId()); tbProject.setUpdateUser(SecurityUtils.getUserId());
int result = tbProjectDao.update(tbProject); int result = tbProjectDao.update(tbProject);
//根据工程id改变班组表中的项目信息
result += tbProjectDao.updateProjectPower(tbProject);
if (result > 0) { if (result > 0) {
return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result); return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result);
} else { } else {
@ -126,6 +128,11 @@ public class TbProjectServiceImpl implements TbProjectService {
if (tbProjectDao.queryById(id).getPowerTotal() > 0) { if (tbProjectDao.queryById(id).getPowerTotal() > 0) {
return AjaxResult.error(ExceptionEnum.DELETE_PROJECT_ERROR.getCode(), ExceptionEnum.DELETE_PROJECT_ERROR.getMsg()); return AjaxResult.error(ExceptionEnum.DELETE_PROJECT_ERROR.getCode(), ExceptionEnum.DELETE_PROJECT_ERROR.getMsg());
} }
//如果工程关联班组则无法删除
int count = tbProjectDao.getList(id);
if (count > 0) {
return AjaxResult.error(ExceptionEnum.DELETE_PROJECT_NOT_FOUND.getCode(), ExceptionEnum.DELETE_PROJECT_NOT_FOUND.getMsg());
}
int result = tbProjectDao.deleteById(id); int result = tbProjectDao.deleteById(id);
if (result > 0) { if (result > 0) {
return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result); return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result);

View File

@ -28,6 +28,11 @@ public class TbWarnConfigServiceImpl implements TbWarnConfigService{
@Override @Override
public AjaxResult deleteByPrimaryKey(Long id) { public AjaxResult deleteByPrimaryKey(Long id) {
//判断配置是否绑定设备绑定无法删除
int count = tbWarnConfigMapper.queryByDeviceId(id);
if (count > 0) {
return AjaxResult.error("该配置被设备绑定,无法删除");
}
int result = tbWarnConfigMapper.deleteByPrimaryKey(id); int result = tbWarnConfigMapper.deleteByPrimaryKey(id);
if (result > 0) { if (result > 0) {
return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result); return AjaxResult.success(ExceptionEnum.SUCCESS.getMsg(), result);

View File

@ -27,11 +27,11 @@ public class ProjectDetailsViewController extends BaseController {
private ProjectDetailsViewServiceImpl projectDetailsViewService; private ProjectDetailsViewServiceImpl projectDetailsViewService;
/** /**
* 根据工程id查询所有设备 * 根据工程id查询相对应类型下的设备信息
*/ */
@GetMapping("/queryDevInfoByProject") @GetMapping("/queryDevInfoByProject")
public AjaxResult queryDevInfoByProject(Integer proId) { public AjaxResult queryDevInfoByProject(Integer proId, Integer devType) {
return AjaxResult.success(projectDetailsViewService.queryDevInfoByProject(proId)); return AjaxResult.success(projectDetailsViewService.queryDevInfoByProject(proId, devType));
} }
/** /**

View File

@ -1,5 +1,6 @@
package com.bonus.screen.mapper; package com.bonus.screen.mapper;
import com.bonus.base.domain.TbDevAttribute;
import com.bonus.data.entity.DevAttributeVo; import com.bonus.data.entity.DevAttributeVo;
import com.bonus.screen.vo.DeviceWarnRecordVo; import com.bonus.screen.vo.DeviceWarnRecordVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -18,7 +19,7 @@ import java.util.Map;
@Mapper @Mapper
public interface TbDeviceDataRecord { public interface TbDeviceDataRecord {
List<Map<String,String>> queryDevInfoByProject(@Param("proId") Integer proId); List<Map<String,String>> queryDevInfoByProject(@Param("proId") Integer proId, @Param("devType") Integer devType);
List<DeviceWarnRecordVo> getDeviceWarnRecord(DeviceWarnRecordVo deviceWarnRecordVo); List<DeviceWarnRecordVo> getDeviceWarnRecord(DeviceWarnRecordVo deviceWarnRecordVo);
@ -26,7 +27,7 @@ public interface TbDeviceDataRecord {
* 查询室外感知设备最新的各项监测数据 * 查询室外感知设备最新的各项监测数据
* @param devId 设备id * @param devId 设备id
*/ */
List<DevAttributeVo> getDevAttributeLatestInfoById(@Param("devId") Integer devId); List<TbDevAttribute> getDevAttributeLatestInfoById(@Param("devId") Integer devId);
/** /**
* 查询室外感知设备历史各项10条记录 * 查询室外感知设备历史各项10条记录

View File

@ -25,8 +25,14 @@ public class ProjectDetailsViewServiceImpl {
private TbDeviceDataRecord tbDeviceDataRecordMapper; private TbDeviceDataRecord tbDeviceDataRecordMapper;
public AjaxResult queryDevInfoByProject(Integer proId) { /**
return AjaxResult.success(tbDeviceDataRecordMapper.queryDevInfoByProject(proId)); * 根据工程id查询相对应类型下的设备信息
* @param proId
* @param devType
* @return
*/
public AjaxResult queryDevInfoByProject(Integer proId, Integer devType) {
return AjaxResult.success(tbDeviceDataRecordMapper.queryDevInfoByProject(proId, devType));
} }
public AjaxResult getDevAttributeLatestInfoById(Integer proId) { public AjaxResult getDevAttributeLatestInfoById(Integer proId) {
@ -47,7 +53,8 @@ public class ProjectDetailsViewServiceImpl {
if (records.isEmpty()) { if (records.isEmpty()) {
return AjaxResult.error("暂无数据"); return AjaxResult.error("暂无数据");
} }
return AjaxResult.success(records); Map<String, List<DevAttributeVo>> listMap = records.stream().collect(Collectors.groupingBy(DevAttributeVo::getJcName));
return AjaxResult.success(listMap);
} }
public AjaxResult getTowerDevAttributeRecordByDay(Integer proId) { public AjaxResult getTowerDevAttributeRecordByDay(Integer proId) {

View File

@ -267,4 +267,8 @@
and tbdr.record_id = #{recordId} and tbdr.record_id = #{recordId}
</if> </if>
</select> </select>
<select id="queryByDeviceId" resultType="java.lang.Integer">
select count(1) from tb_device
where del_flag = 0 and bd_id = #{id}
</select>
</mapper> </mapper>

View File

@ -115,9 +115,6 @@
<if test="updateUser != null"> <if test="updateUser != null">
update_user = #{updateUser}, update_user = #{updateUser},
</if> </if>
<if test="delFlag != null">
del_flag = #{delFlag},
</if>
</set> </set>
where id = #{id} where id = #{id}
</update> </update>

View File

@ -84,6 +84,10 @@
</if> </if>
</select> </select>
<select id="getProPowerListByProId" resultType="java.lang.Integer">
select count(1) from tb_project where del_flag = '0' and depart_id = #{id}
</select>
<!--新增所有列--> <!--新增所有列-->
<insert id="insert"> <insert id="insert">
INSERT INTO tb_pro_depart INSERT INTO tb_pro_depart

View File

@ -170,6 +170,12 @@
where id = #{id} where id = #{id}
</update> </update>
<update id="updateProjectPower">
update tb_team
set pro_name = #{proName}
where pro_id = #{id}
</update>
<select id="getProjectView" resultType="com.bonus.screen.vo.ProjectViewVo"> <select id="getProjectView" resultType="com.bonus.screen.vo.ProjectViewVo">
select count(1) as projectTotal, select count(1) as projectTotal,
count(case when tb.pro_type = #{powerCode} then 1 end) as projectPowerTotal, count(case when tb.pro_type = #{powerCode} then 1 end) as projectPowerTotal,
@ -221,5 +227,8 @@
where pro_id = #{proId} where pro_id = #{proId}
and del_flag = 0 and del_flag = 0
</select> </select>
<select id="getList" resultType="java.lang.Integer">
select count(1) from tb_team where del_flag = 0 and pro_id = #{id}
</select>
</mapper> </mapper>

View File

@ -411,5 +411,9 @@
and twc.config_name like concat('%',#{configName},'%') and twc.config_name like concat('%',#{configName},'%')
</if> </if>
</select> </select>
<select id="queryByDeviceId" resultType="java.lang.Integer">
select count(1) from tb_device
where del_flag = 0 and config_id = #{id}
</select>
</mapper> </mapper>

View File

@ -5,12 +5,12 @@
<select id="queryDevInfoByProject" resultType="java.util.Map"> <select id="queryDevInfoByProject" resultType="java.util.Map">
SELECT SELECT
device.id as devId,device.dev_name as devName,project.id AS proId,project.pro_name AS proName, device.id as devId,device.dev_name as devName,project.id AS proId,project.pro_name AS proName,
device.dev_type as devType device.dev_type as devType, device.dev_status as devStatus, device.dev_warn as devWarn
FROM FROM
tb_device device tb_device device
LEFT JOIN tb_bd_device_record tbdr ON device.bd_id = tbdr.id LEFT JOIN tb_bd_device_record tbdr ON device.bd_id = tbdr.id
LEFT JOIN tb_project project ON project.id = tbdr.pro_id AND project.del_flag = 0 LEFT JOIN tb_project project ON project.id = tbdr.pro_id AND project.del_flag = 0
WHERE project.id = #{proId} and device.del_flag = 0 WHERE project.id = #{proId} and device.dev_type = #{devType} and device.del_flag = 0
</select> </select>
<select id="getDeviceWarnRecord" resultType="com.bonus.screen.vo.DeviceWarnRecordVo"> <select id="getDeviceWarnRecord" resultType="com.bonus.screen.vo.DeviceWarnRecordVo">
@ -37,18 +37,12 @@
GROUP BY tddr.id GROUP BY tddr.id
</select> </select>
<select id="getDevAttributeLatestInfoById" resultType="com.bonus.data.entity.DevAttributeVo"> <select id="getDevAttributeLatestInfoById" resultType="com.bonus.base.domain.TbDevAttribute">
select select
tddr.dev_id,tddr.dev_name,tddr.dev_type,tddr.attribute_name as jcName,tddr.attribute_val as jcValue, tddr.dev_id as devId,tddr.jc_name as jcName,tddr.jc_value as jcValue,tddr.jc_unit as jcUnit,
tddr.is_warn,tddr.create_time as jcTime tddr.is_warn as isWarn,tddr.jc_time as jcTime
from tb_dev_data_record tddr from tb_dev_attribute tddr
where tddr.dev_id = #{devId} where tddr.dev_id = #{devId}
and tddr.merger_id = (
select merger_id
from tb_dev_data_record
where dev_id = #{devId}
order by create_time desc limit 1
)
</select> </select>
<select id="getDevAttributeRecordByDevId" resultType="com.bonus.data.entity.DevAttributeVo"> <select id="getDevAttributeRecordByDevId" resultType="com.bonus.data.entity.DevAttributeVo">
@ -77,7 +71,7 @@
LEFT JOIN tb_bd_device_record tbdr ON tbdr.id = device.bd_id LEFT JOIN tb_bd_device_record tbdr ON tbdr.id = device.bd_id
WHERE WHERE
tddr.create_time >= DATE_SUB(NOW(), INTERVAL 1 DAY) tddr.create_time >= DATE_SUB(NOW(), INTERVAL 1 DAY)
AND tbdr.pro_id = #{proId} AND tddr.dev_type IN ('angle','pull') AND tbdr.pro_id = #{proId} AND tddr.dev_type IN (117, 118)
ORDER BY ORDER BY
tddr.create_time DESC tddr.create_time DESC
</select> </select>
@ -141,7 +135,7 @@
LEFT JOIN tb_bd_device_record tbdr ON tbdr.id = device.bd_id LEFT JOIN tb_bd_device_record tbdr ON tbdr.id = device.bd_id
WHERE WHERE
tddr.is_warn = '1' tddr.is_warn = '1'
AND tbdr.pro_id = #{proId} AND tddr.dev_type = 'environmental' AND tbdr.pro_id = #{proId} AND tddr.dev_type in (117, 118)
ORDER BY ORDER BY
tddr.create_time DESC tddr.create_time DESC
limit 20 limit 20