package com.zy.sc.manager.controller; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.core.annotations.ManagerAuth; import com.core.common.R; import com.zy.sc.common.service.GeoService; import com.zy.sc.common.web.BaseController; import com.zy.sc.manager.entity.IssueType; import com.zy.sc.manager.service.IssueTypeService; import com.zy.sc.system.entity.Host; import com.zy.sc.system.service.HostService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; /** * Created by vincent on 2021/12/20 */ @Slf4j @RestController @RequestMapping("app") public class AppController extends BaseController { @Autowired private HostService hostService; @Autowired private IssueTypeService issueTypeService; @Autowired private GeoService geoService; @RequestMapping("/host/list/auth") @ManagerAuth public R hostList(){ Long hostId = getHostId(); Wrapper wrapper = new EntityWrapper().orderBy("id"); if (hostId != null) { wrapper.eq("id", hostId); } List hostList = hostService.selectList(wrapper); return R.ok().add(hostList); } @RequestMapping("/issue/type/auth") public R issueType(){ List issueTypes = issueTypeService.selectList(new EntityWrapper().orderBy("id")); return R.ok().add(issueTypes); } // @RequestMapping("/sensor/save/auth") // @ManagerAuth(memo = "移动端添加设备") // public R issueSave(MobileSensorParam param){ // Long hostId = getHostId(); // if (hostId == null) { // return R.error("请使用正确账号登录"); // } // if (Cools.isEmpty(param.getUuid())) { // return R.error("请填写设备编号"); // } // if (Cools.isEmpty(param.getSensorType())) { // return R.error("请选择设备类型"); // } // SensorType sensorType = sensorTypeService.selectById(param.getSensorType()); // if (sensorType == null) { // return R.error("请选择正确的设备类型"); // } // Sensor sensor = sensorService.selectByCode(param.getUuid()); // if (sensor != null) { // return R.error("设备编号已存在,请联系管理员"); // } else { // sensor = new Sensor(); // } // Date now = new Date(); // sensor.setUuid(param.getUuid()); // sensor.setHostId(hostId); // sensor.setSensorType(param.getSensorType()); // sensor.setCcid(param.getCcid()); // sensor.setAddr(param.getAddr()); // sensor.setDesc(param.getDesc()); // sensor.setThreshold(String.valueOf(param.getThreshold())); // List imgArr = param.getImgArr(); // if (!Cools.isEmpty(imgArr)) { // sensor.setImg(JSONArray.toJSONString(imgArr)); // } // if (!Cools.isEmpty(param.getLocationObj())) { // LocationObj locationObj = JSON.parseObject(param.getLocationObj(), LocationObj.class); // sensor.setLon(Double.parseDouble(locationObj.getLongitude())); // sensor.setLat(Double.parseDouble(locationObj.getLatitude())); // GeoCodeDto geoCode = geoService.getGeoCode(sensor.getLon(), sensor.getLat()); // if (geoCode != null && geoCode.getAddressComponent() != null) { // sensor.setProvince(geoCode.getAddressComponent().getProvince()); // sensor.setCity(geoCode.getAddressComponent().getCity()); // sensor.setDistrict(geoCode.getAddressComponent().getDistrict()); // sensor.setTownship(geoCode.getAddressComponent().getTownship()); // } // } // sensor.setStatus(1); // sensor.setCreateBy(getUserId()); // sensor.setCreateTime(now); // sensor.setUpdateBy(getUserId()); // sensor.setUpdateTime(now); // sensor.setMemo(param.getMemo()); // if (!sensorService.insert(sensor)) { // throw new CoolException("添加失败,请联系管理员"); // } // return R.ok("添加设备成功"); // } // // @RequestMapping("/sensor/list/auth") // @ManagerAuth // public R sensorList(@RequestParam(required = false) String condition){ // Wrapper wrapper = new EntityWrapper() // .like("uuid", condition) // .orderBy("sensor_type").orderBy("create_time"); // Long hostId = getHostId(); // if (hostId != null) { // wrapper.eq("host_id", hostId); // } // List sensors = sensorService.selectList(wrapper); // List result = new ArrayList<>(); // Set sensorTypeSet = new HashSet<>(); // for (Sensor sensor : sensors) { // AppSensorVo sensorVo = new AppSensorVo(); // sensorVo.setSensorId(sensor.getId()); // sensorVo.setUuid(sensor.getUuid()); // String addr = sensor.getProvince()+sensor.getCity()+sensor.getDistrict(); //// String addr = sensor.getProvince()+","+sensor.getCity()+","+sensor.getDistrict(); // if (Cools.isEmpty(addr)) { // addr = "未知定位"; // } // sensorVo.setAddr(addr); // // if (!sensorTypeSet.contains(sensor.getSensorType())) { // sensorTypeSet.add(sensor.getSensorType()); // SensorType sensorType = sensorTypeService.selectById(sensor.getSensorType()); // AppSensorTypeVo vo = new AppSensorTypeVo(); // vo.setSensorTypeFlag(sensorType.getFlag()); // vo.setSensorTypeId(sensor.getSensorType()); // vo.setSensorTypeName(sensorType.getName()); // result.add(vo); // vo.getSensors().add(sensorVo); // } else { // for (AppSensorTypeVo vo : result) { // if (vo.getSensorTypeId().equals(sensor.getSensorType())) { // vo.getSensors().add(sensorVo); // } // } // } // } // return R.ok().add(result); // } // // @RequestMapping("/sensor/detl/auth") // @ManagerAuth // public R sensorDetl(@RequestParam Long sensorId){ // return R.ok().add(sensorService.selectById(sensorId)); // } }