package com.huimv.admin.service.impl; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.huimv.admin.common.utils.Result; import com.huimv.admin.common.utils.ResultCode; import com.huimv.admin.entity.EnvDevice; import com.huimv.admin.entity.dto.DeviceDto; import com.huimv.admin.mapper.EnvDeviceMaintainMapper; import com.huimv.admin.mapper.EnvDeviceMapper; import com.huimv.admin.service.IEnvDeviceService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletRequest; import java.text.NumberFormat; import java.util.List; import java.util.Map; /** *

* 服务实现类 *

* * @author author * @since 2023-02-13 */ @Service public class EnvDeviceServiceImpl extends ServiceImpl implements IEnvDeviceService { @Autowired private EnvDeviceMapper envDeviceMapper; @Autowired private EnvDeviceMaintainMapper envDeviceMaintainMapper; @Override public Result count(HttpServletRequest httpServletRequest, Map paramsMap) { String farmId = paramsMap.get("farmId"); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", farmId); Integer count = envDeviceMapper.selectCount(queryWrapper); QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("device_status", 1); Integer count1 = envDeviceMapper.selectCount(queryWrapper1); Integer OffDeviceCount = count- count1; //创建一个数值格式化对象 NumberFormat numberFormat = NumberFormat.getInstance(); //设置精确到小数点后两位 numberFormat.setMaximumFractionDigits(2); String onDeviceRate = numberFormat.format((float)count1 / (float) count* 100) + "%"; JSONObject jsonObject = new JSONObject(); jsonObject.put("DeviceCount", count); jsonObject.put("OnDeviceCount", count1); jsonObject.put("OffDeviceCount", OffDeviceCount); jsonObject.put("OnDeviceRate", onDeviceRate); return new Result(ResultCode.SUCCESS, jsonObject); } @Override public Result list(HttpServletRequest httpServletRequest, Map paramsMap) { String farmId = paramsMap.get("farmId"); String pageSize = paramsMap.get("pageSize"); String pageNo = paramsMap.get("pageNo"); if (pageSize==null||pageSize=="") { pageSize = "10"; } if (pageNo==null||pageNo=="") { pageNo = "1"; } QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", farmId); Page page = new Page(Integer.parseInt(pageNo),Integer.parseInt(pageSize)); return new Result(ResultCode.SUCCESS,envDeviceMapper.selectPage(page, queryWrapper)); } @Override public Result add(HttpServletRequest httpServletRequest, Map paramsMap) { String farmId = paramsMap.get("farmId"); String DeviceName = paramsMap.get("DeviceName"); String BuildLocation = paramsMap.get("BuildLocation"); String DeviceBrand = paramsMap.get("DeviceBrand"); String remark = paramsMap.get("remark"); if (remark == null || remark == "") { remark = null; } EnvDevice envDevice = new EnvDevice(); envDevice.setFarmId(Integer.parseInt(farmId)); envDevice.setDeviceName(DeviceName); envDevice.setBuildLocation(BuildLocation); envDevice.setDeviceBrand(DeviceBrand); envDevice.setRemark(remark); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("device_name", DeviceName).eq("farm_id",farmId); EnvDevice device = envDeviceMapper.selectOne(queryWrapper); if (ObjectUtil.isEmpty(device)) { envDeviceMapper.insert(envDevice); } else { return new Result(ResultCode.FAIL, "设备名称已存在"); } return new Result(ResultCode.SUCCESS,"添加成功"); } @Override public Result edit(HttpServletRequest httpServletRequest, Map paramsMap) { String farmId = paramsMap.get("farmId"); String id = paramsMap.get("id"); String DeviceName = paramsMap.get("DeviceName"); String BuildLocation = paramsMap.get("BuildLocation"); String DeviceBrand = paramsMap.get("DeviceBrand"); String remark = paramsMap.get("remark"); if (remark == null || remark == "") { remark = null; } QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("id", id); EnvDevice envDevice = envDeviceMapper.selectOne(queryWrapper); envDevice.setFarmId(Integer.parseInt(farmId)); envDevice.setDeviceName(DeviceName); envDevice.setDeviceBrand(DeviceBrand); envDevice.setBuildLocation(BuildLocation); envDevice.setRemark(remark); QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("device_name", DeviceName); if (ObjectUtil.isEmpty(envDeviceMapper.selectOne(queryWrapper1))) { envDeviceMapper.updateById(envDevice); } else { return new Result(ResultCode.FAIL, "设备名称已存在"); } return new Result(ResultCode.SUCCESS); } @Override public Result delete(HttpServletRequest httpServletRequest, Map paramsMap) { String farmId = paramsMap.get("farmId"); String id = paramsMap.get("id"); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("id", id).eq("farm_id", farmId); envDeviceMapper.delete(queryWrapper); return new Result(ResultCode.SUCCESS,"删除成功"); } }