lizijie
2021-05-12 33508d2949a4bd64ff5eddb8aa18fe8d86020f1b
screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
@@ -1,6 +1,9 @@
package com.moral.api.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.moral.api.entity.ManageRole;
import com.moral.api.entity.Sensor;
import com.moral.api.mapper.SensorMapper;
import com.moral.api.service.SensorService;
@@ -16,6 +19,8 @@
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -74,6 +79,7 @@
    }
    @Override
    @Transactional
    public Map<String, Object> updateSensor(Map<String,Object> updateSensorMap) {
        Map<String,Object> resultMap = new HashMap<>();
        if(ObjectUtils.isEmpty(updateSensorMap.get("id"))){
@@ -125,10 +131,73 @@
                content = content+"备注:"+oldSensor.getDesc()+"->"+updateSensorMap.get(key)+";";
            }
        }
        System.out.println(content);
        logUtils.saveOperationForManage(request,content,Constants.UPDATE_OPERATE_TYPE);
        resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode());
        resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg());
        return resultMap;
    }
    @Override
    public Map<String,Object> getAllSensor(Map map) {
        Map<String,Object> resultMap = new HashMap<>();
        int current = Integer.parseInt(map.get("current").toString());
        int size = Integer.parseInt(map.get("size").toString());
        Page<Sensor> page = new Page(current,size);
        QueryWrapper<Sensor> wrapper = new QueryWrapper();
        wrapper.eq("is_delete",0);
        String orderType = map.get("orderType").toString();
        if (orderType.equals(Constants.ORDER_ASC)){
            wrapper.orderByAsc("create_time");
        }else {
            wrapper.orderByDesc("create_time");
        }
        Page resultPage = sensorMapper.selectPage(page,wrapper);
        List<Sensor> sensors = resultPage.getRecords();
        SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        List<Map<String,Object>> sensotList = new ArrayList<>();
        for (Sensor sensor:sensors) {
            Map manageRoleMap = JSON.parseObject(JSON.toJSONString(sensor),Map.class);
            String createTime = SDF.format(sensor.getCreateTime());
            String updateTime = SDF.format(sensor.getUpdateTime());
            manageRoleMap.put("createTime",createTime);
            manageRoleMap.put("updateTime",updateTime);
            manageRoleMap.put("key",sensor.getId());
            sensotList.add(manageRoleMap);
        }
        resultMap.put("manageRoles",sensotList);
        int totalNumber = sensors.size();
        resultMap.put("totalNumber",totalNumber);
        resultMap.put("current",current);
        int totalPageNumber = totalNumber/size;
        if(totalNumber%size != 0){
            totalPageNumber += 1;
        }
        resultMap.put("totalPageNumber",totalPageNumber);
        return resultMap;
    }
    @Override
    @Transactional
    public Map<String, Object> deleteSensor(Map map) {
        Map<String,Object> resultMap = new HashMap<>();
        QueryWrapper<Sensor> wrapper = new QueryWrapper<>();
        wrapper.eq("id",map.get("id"));
        wrapper.eq("is_delete","0");
        Sensor sensor = sensorMapper.selectOne(wrapper);
        if(ObjectUtils.isEmpty(sensor)){
            resultMap.put("code",ResponseCodeEnum.SENSOR_IS_NOT_EXIST.getCode());
            resultMap.put("msg",ResponseCodeEnum.SENSOR_IS_NOT_EXIST.getMsg());
            return resultMap;
        }
        Sensor deleteSensor = new Sensor();
        deleteSensor.setIsDelete("1");
        sensorMapper.update(deleteSensor,wrapper);
        //操作插入日志
        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
        String content = "删除因子:"+sensor.getName()+";";
        logUtils.saveOperationForManage(request,content,Constants.DELETE_OPERATE_TYPE);
        resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode());
        resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg());
        return resultMap;
    }
}