screen-manage/src/main/java/com/moral/api/controller/DeviceAdjustValueController.java | ●●●●● patch | view | raw | blame | history | |
screen-manage/src/main/java/com/moral/api/mapper/DeviceAdjustValueMapper.java | ●●●●● patch | view | raw | blame | history | |
screen-manage/src/main/java/com/moral/api/pojo/dto/adjust/AdjustDTO.java | ●●●●● patch | view | raw | blame | history | |
screen-manage/src/main/java/com/moral/api/pojo/form/adjust/AdjustForm.java | ●●●●● patch | view | raw | blame | history | |
screen-manage/src/main/java/com/moral/api/service/DeviceAdjustValueService.java | ●●●●● patch | view | raw | blame | history | |
screen-manage/src/main/java/com/moral/api/service/impl/DeviceAdjustValueServiceImpl.java | ●●●●● patch | view | raw | blame | history | |
screen-manage/src/main/resources/mapper/DeviceAdjustValueMapper.xml | ●●●●● patch | view | raw | blame | history |
screen-manage/src/main/java/com/moral/api/controller/DeviceAdjustValueController.java
@@ -2,15 +2,25 @@ import com.alibaba.fastjson.JSON; import com.moral.api.entity.DeviceAdjustValue; import com.moral.api.pojo.dto.adjust.AdjustDTO; import com.moral.api.pojo.form.adjust.AdjustForm; import com.moral.api.service.DeviceAdjustValueService; import com.moral.constant.ResponseCodeEnum; import com.moral.constant.ResultMessage; import com.moral.util.WebUtils; import com.sun.org.apache.regexp.internal.RE; import io.swagger.annotations.Api; import lombok.extern.slf4j.Slf4j; import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.HashMap; import java.util.List; import java.util.Map; @Slf4j @@ -93,4 +103,45 @@ return ResultMessage.fail(Integer.parseInt(resultMap.get("code").toString()),resultMap.get("msg").toString()); } /** * 批量查询校准值 * @param parameters * @return */ @PostMapping("getAllAdjust") public ResultMessage getAllAdjust(@RequestBody Map<String, Object> parameters){ if (!parameters.containsKey("id")|| !parameters.containsKey("code")){ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); } List<Map<String, Object>> allAdjust = deviceAdjustValueService.getAllAdjust(parameters); if (ObjectUtils.isEmpty(allAdjust)){ return ResultMessage.fail(ResponseCodeEnum.TARGET_IS_NULL.getCode(), ResponseCodeEnum.TARGET_IS_NULL.getMsg()); } return ResultMessage.ok(allAdjust); } /** * 批量修改校准值 * @return */ @PostMapping("updateAllAdjust") public ResultMessage updateAllAdjust( @RequestBody Map<String, List<AdjustForm>> parameters){ List<AdjustForm> o = parameters.get("AdjustForm"); if (ObjectUtils.isEmpty(o)){ return ResultMessage.fail(ResponseCodeEnum.TARGET_IS_NULL.getCode(), ResponseCodeEnum.TARGET_IS_NULL.getMsg()); } Map<String, Object> map = deviceAdjustValueService.updateAllAdjust(o); int code = Integer.parseInt(map.get("code").toString()); if (code != 0){ return ResultMessage.fail(ResponseCodeEnum.FAIL.getCode(),ResponseCodeEnum.FAIL.getMsg()); } return ResultMessage.fail(ResponseCodeEnum.SUCCESS.getCode(),ResponseCodeEnum.SUCCESS.getMsg()); // return ResultMessage.ok(map); } } screen-manage/src/main/java/com/moral/api/mapper/DeviceAdjustValueMapper.java
@@ -2,7 +2,10 @@ import com.moral.api.entity.DeviceAdjustValue; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.moral.api.pojo.dto.adjust.AdjustDTO; import java.util.List; import java.util.Map; /** @@ -17,4 +20,7 @@ void updateDeviceAdjustValue(Map map); List<AdjustDTO> selectAllAdjust(Map map); } screen-manage/src/main/java/com/moral/api/pojo/dto/adjust/AdjustDTO.java
New file @@ -0,0 +1,13 @@ package com.moral.api.pojo.dto.adjust; import lombok.Data; @Data public class AdjustDTO { private Integer id; private String mac; private String name; private String value; } screen-manage/src/main/java/com/moral/api/pojo/form/adjust/AdjustForm.java
New file @@ -0,0 +1,30 @@ package com.moral.api.pojo.form.adjust; import lombok.Data; @Data public class AdjustForm { private Integer id; private String mac; private String value; private String name; private String agehou; private String aqi; private String cel; private String code; } screen-manage/src/main/java/com/moral/api/service/DeviceAdjustValueService.java
@@ -2,8 +2,12 @@ import com.moral.api.entity.DeviceAdjustValue; import com.baomidou.mybatisplus.extension.service.IService; import com.moral.api.pojo.dto.adjust.AdjustDTO; import com.moral.api.pojo.form.adjust.AdjustForm; import org.springframework.transaction.annotation.Transactional; import java.util.List; import java.util.Map; /** @@ -74,4 +78,23 @@ */ Map<String,Object> refreshRedis(); /** * 批量查询校准值 * @param parameters * @return */ List<Map<String, Object>> getAllAdjust(Map<String, Object> parameters); /** * 批量修改校准值 * @param paras * @return */ Map<String, Object> updateAllAdjust(List<AdjustForm> paras); } screen-manage/src/main/java/com/moral/api/service/impl/DeviceAdjustValueServiceImpl.java
@@ -2,6 +2,7 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.moral.api.entity.Device; @@ -12,6 +13,8 @@ import com.moral.api.mapper.DeviceMapper; import com.moral.api.mapper.SensorMapper; import com.moral.api.mapper.SpecialDeviceMapper; import com.moral.api.pojo.dto.adjust.AdjustDTO; import com.moral.api.pojo.form.adjust.AdjustForm; import com.moral.api.service.DeviceAdjustValueService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.api.util.LogUtils; @@ -19,6 +22,7 @@ import com.moral.constant.ResponseCodeEnum; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.jdbc.object.UpdatableSqlQuery; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.context.request.RequestContextHolder; @@ -27,6 +31,7 @@ import javax.servlet.http.HttpServletRequest; import java.sql.Time; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -262,6 +267,94 @@ return resultMap; } /** * 批量修改校准值 * * @param parameters * @return */ @Override public List<Map<String, Object>> getAllAdjust(Map<String, Object> parameters) { ArrayList<Map<String, Object>> rsList = new ArrayList<>(); String code = parameters.get("code").toString(); List<AdjustDTO> adjustDTOS = deviceAdjustValueMapper.selectAllAdjust(parameters); for (AdjustDTO adjustDTO : adjustDTOS) { HashMap<String, Object> map = new HashMap<>(); String value = adjustDTO.getValue(); if (ObjectUtils.isEmpty(value)){ if (code.equals("a99054")){ value ="cel*1"; map.put("cel",1); }else { value ="aqi*0+cel*1"; map.put("aqi",0); map.put("cel",1); } }else { if (code.equals("a99054")){ String[] split = value.split("\\*"); map.put("cel",Double.parseDouble(split[1])); }else { String[] split = value.split("\\+"); String[] split1 = split[0].toString().split("\\*"); map.put("aqi",Double.parseDouble(split1[1])); String[] split2 = split[1].toString().split("\\*"); map.put("cel",Double.parseDouble(split2[1])); } } map.put("value",value); map.put("name",adjustDTO.getName()); map.put("id",adjustDTO.getId()); map.put("mac",adjustDTO.getMac()); map.put("code",code); rsList.add(map); } return rsList; } /** * 批量修改校准值 * * @param paras * @return */ @Override @Transactional public Map<String, Object> updateAllAdjust(List<AdjustForm> paras) { Map<String,Object> resultMap = new HashMap<>(); for (AdjustForm adjustForm : paras) { DeviceAdjustValue deviceAdjustValue = new DeviceAdjustValue(); QueryWrapper<DeviceAdjustValue> wrapper1 = new QueryWrapper<>(); wrapper1.eq("mac",adjustForm.getMac()); wrapper1.eq ("sensor_code",adjustForm.getCode()); Integer integer = deviceAdjustValueMapper.selectCount(wrapper1); if (integer==0){ deviceAdjustValue.setValue(adjustForm.getAgehou()); deviceAdjustValue.setCreateTime(new Date()); deviceAdjustValue.setIsDelete("0"); deviceAdjustValue.setUpdateTime(new Date()); deviceAdjustValue.setSensorCode(adjustForm.getCode()); deviceAdjustValue.setMac(adjustForm.getMac()); deviceAdjustValue.setEndTime(Time.valueOf("23:59:00")); deviceAdjustValue.setStartTime(Time.valueOf("00:00:00")); deviceAdjustValueMapper.insert(deviceAdjustValue); }else { deviceAdjustValue.setValue(adjustForm.getAgehou()); deviceAdjustValue.setUpdateTime(new Date()); deviceAdjustValue.setId(adjustForm.getId()); deviceAdjustValueMapper.updateById(deviceAdjustValue); } //刷新缓存 refreshCache(adjustForm.getMac()); } resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode()); resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg()); return resultMap; } public void refreshRedisAll(){ refreshRedis(); } screen-manage/src/main/resources/mapper/DeviceAdjustValueMapper.xml
@@ -41,4 +41,17 @@ where id = #{id} </update> <select id="selectAllAdjust" resultType="com.moral.api.pojo.dto.adjust.AdjustDTO"> SELECT de.`name` , ds.id, de.mac, ds.`value` FROM device AS de LEFT JOIN device_adjust_value AS ds ON ds.mac = de.mac AND ds.sensor_code = #{code} AND ds.is_delete =0 WHERE de.monitor_point_id = #{id} AND de.is_delete = 0 </select> </mapper>