机械设备定位
This commit is contained in:
parent
e3f802d949
commit
88be126b4e
@ -0,0 +1,185 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.controller;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.zhgd.jeecg.common.api.vo.Result;
|
||||
import com.zhgd.jeecg.common.system.query.QueryGenerator;
|
||||
import com.zhgd.jeecg.common.util.oConvertUtils;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDayRecord;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.service.IMechanicalEquipmentPositionDayRecordService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiImplicitParams;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.net.URLDecoder;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* @Title: Controller
|
||||
* @Description: 机械设备定位-日行数据
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/xmgl/mechanicalEquipmentPositionDayRecord")
|
||||
@Slf4j
|
||||
@Api(tags = "机械设备定位-日行数据相关Api")
|
||||
public class MechanicalEquipmentPositionDayRecordController {
|
||||
@Autowired
|
||||
private IMechanicalEquipmentPositionDayRecordService mechanicalEquipmentPositionDayRecordService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "分页列表查询机械设备定位-日行数据信息", notes = "分页列表查询机械设备定位-日行数据信息", httpMethod = "GET")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
|
||||
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
|
||||
@ApiImplicitParam(name = "month", value = "类型:月份(如2020-10)", paramType = "query", required = false, dataType = "String"),
|
||||
@ApiImplicitParam(name = "devSn", value = "设备编号", dataType = "String", paramType = "query", required = false),
|
||||
})
|
||||
@GetMapping(value = "/page")
|
||||
public Result<IPage<MechanicalEquipmentPositionDayRecord>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {
|
||||
return Result.success(mechanicalEquipmentPositionDayRecordService.queryPageList(paramMap));
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "列表查询机械设备定位-日行数据信息", notes = "列表查询机械设备定位-日行数据信息", httpMethod = "GET")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "month", value = "类型:月份(如2020-10)", paramType = "query", required = false, dataType = "String"),
|
||||
@ApiImplicitParam(name = "devSn", value = "设备编号", dataType = "String", paramType = "query", required = false),
|
||||
})
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<MechanicalEquipmentPositionDayRecord>> queryList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {
|
||||
return Result.success(mechanicalEquipmentPositionDayRecordService.queryList(paramMap));
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param mechanicalEquipmentPositionDayRecord
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "添加机械设备定位-日行数据信息", notes = "添加机械设备定位-日行数据信息", httpMethod = "POST")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<MechanicalEquipmentPositionDayRecord> add(@RequestBody MechanicalEquipmentPositionDayRecord mechanicalEquipmentPositionDayRecord) {
|
||||
log.info("添加机械设备定位-日行数据信息:{}", JSON.toJSONString(mechanicalEquipmentPositionDayRecord));
|
||||
mechanicalEquipmentPositionDayRecordService.add(mechanicalEquipmentPositionDayRecord);
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param mechanicalEquipmentPositionDayRecord
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "编辑机械设备定位-日行数据信息", notes = "编辑机械设备定位-日行数据信息", httpMethod = "POST")
|
||||
@PostMapping(value = "/edit")
|
||||
public Result<MechanicalEquipmentPositionDayRecord> edit(@RequestBody MechanicalEquipmentPositionDayRecord mechanicalEquipmentPositionDayRecord) {
|
||||
mechanicalEquipmentPositionDayRecordService.updateById(mechanicalEquipmentPositionDayRecord);
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "删除机械设备定位-日行数据信息", notes = "删除机械设备定位-日行数据信息", httpMethod = "POST")
|
||||
@ApiImplicitParam(name = "id", value = "机械设备定位-日行数据ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}")
|
||||
@PostMapping(value = "/delete")
|
||||
public Result<MechanicalEquipmentPositionDayRecord> delete(@ApiIgnore @RequestBody HashMap<String, Object> map) {
|
||||
String id = MapUtils.getString(map, "id");
|
||||
Result<MechanicalEquipmentPositionDayRecord> result = new Result<MechanicalEquipmentPositionDayRecord>();
|
||||
MechanicalEquipmentPositionDayRecord mechanicalEquipmentPositionDayRecord = mechanicalEquipmentPositionDayRecordService.getById(id);
|
||||
if (mechanicalEquipmentPositionDayRecord == null) {
|
||||
result.error500("未找到对应实体");
|
||||
} else {
|
||||
boolean ok = mechanicalEquipmentPositionDayRecordService.removeById(id);
|
||||
if (ok) {
|
||||
result.success("删除成功!");
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "通过id查询机械设备定位-日行数据信息", notes = "通过id查询机械设备定位-日行数据信息", httpMethod = "GET")
|
||||
@ApiImplicitParam(name = "id", value = "机械设备定位-日行数据ID", paramType = "query", required = true, dataType = "Integer")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<MechanicalEquipmentPositionDayRecord> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
Result<MechanicalEquipmentPositionDayRecord> result = new Result<MechanicalEquipmentPositionDayRecord>();
|
||||
MechanicalEquipmentPositionDayRecord mechanicalEquipmentPositionDayRecord = mechanicalEquipmentPositionDayRecordService.getById(id);
|
||||
if (mechanicalEquipmentPositionDayRecord == null) {
|
||||
result.error500("未找到对应实体");
|
||||
} else {
|
||||
result.setResult(mechanicalEquipmentPositionDayRecord);
|
||||
result.setSuccess(true);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
*/
|
||||
@ApiOperation(value = "导出excel机械设备定位-日行数据信息", notes = "导出excel机械设备定位-日行数据信息", httpMethod = "POST")
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
|
||||
// Step.1 组装查询条件
|
||||
QueryWrapper<MechanicalEquipmentPositionDayRecord> queryWrapper = null;
|
||||
try {
|
||||
String paramsStr = request.getParameter("paramsStr");
|
||||
if (oConvertUtils.isNotEmpty(paramsStr)) {
|
||||
String deString = URLDecoder.decode(paramsStr, "UTF-8");
|
||||
MechanicalEquipmentPositionDayRecord mechanicalEquipmentPositionDayRecord = JSON.parseObject(deString, MechanicalEquipmentPositionDayRecord.class);
|
||||
queryWrapper = QueryGenerator.initQueryWrapper(mechanicalEquipmentPositionDayRecord, request.getParameterMap());
|
||||
}
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
//Step.2 AutoPoi 导出Excel
|
||||
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
|
||||
List<MechanicalEquipmentPositionDayRecord> pageList = mechanicalEquipmentPositionDayRecordService.list(queryWrapper);
|
||||
//导出文件名称
|
||||
mv.addObject(NormalExcelConstants.FILE_NAME, "机械设备定位-日行数据列表");
|
||||
mv.addObject(NormalExcelConstants.CLASS, MechanicalEquipmentPositionDayRecord.class);
|
||||
mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("机械设备定位-日行数据列表数据", "导出人:Jeecg", "导出信息"));
|
||||
mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
|
||||
return mv;
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,6 +1,7 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.controller;
|
||||
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.service.IMechanicalEquipmentPositionDevService;
|
||||
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
@ -46,9 +47,10 @@ public class MechanicalEquipmentPositionDevController {
|
||||
*/
|
||||
@ApiOperation(value = "分页列表查询机械设备定位-设备信息", notes = "分页列表查询机械设备定位-设备信息", httpMethod = "GET")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
|
||||
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
|
||||
})
|
||||
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
|
||||
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
|
||||
@ApiImplicitParam(name = "online", value = "在线状态(0.离线 1.在线)", paramType = "query", required = false, dataType = "Integer"),
|
||||
})
|
||||
@GetMapping(value = "/page")
|
||||
public Result<IPage<MechanicalEquipmentPositionDev>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {
|
||||
return Result.success(mechanicalEquipmentPositionDevService.queryPageList(paramMap));
|
||||
@ -115,14 +117,23 @@ public class MechanicalEquipmentPositionDevController {
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<MechanicalEquipmentPositionDev> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
Result<MechanicalEquipmentPositionDev> result = new Result<MechanicalEquipmentPositionDev>();
|
||||
MechanicalEquipmentPositionDev mechanicalEquipmentPositionDev = mechanicalEquipmentPositionDevService.getById(id);
|
||||
if (mechanicalEquipmentPositionDev == null) {
|
||||
result.error500("未找到对应实体");
|
||||
} else {
|
||||
result.setResult(mechanicalEquipmentPositionDev);
|
||||
result.setSuccess(true);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
MechanicalEquipmentPositionDev mechanicalEquipmentPositionDev = mechanicalEquipmentPositionDevService.getById(id);
|
||||
if (mechanicalEquipmentPositionDev == null) {
|
||||
result.error500("未找到对应实体");
|
||||
} else {
|
||||
result.setResult(mechanicalEquipmentPositionDev);
|
||||
result.setSuccess(true);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "统计机械设备定位-设备信息", notes = "统计机械设备定位-设备信息", httpMethod = "POST")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping(value = "/countDev")
|
||||
public Result<CountVehiclePositionDevVo> countDev(@ApiIgnore @RequestBody HashMap<String, Object> paramMap) {
|
||||
return Result.success(mechanicalEquipmentPositionDevService.countDev(paramMap));
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,170 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.controller;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.zhgd.jeecg.common.api.vo.Result;
|
||||
import com.zhgd.jeecg.common.system.query.QueryGenerator;
|
||||
import com.zhgd.jeecg.common.util.oConvertUtils;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionFence;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.service.IMechanicalEquipmentPositionFenceService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiImplicitParams;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.net.URLDecoder;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* @Title: Controller
|
||||
* @Description: 机械设备定位-围栏
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/xmgl/mechanicalEquipmentPositionFence")
|
||||
@Slf4j
|
||||
@Api(tags = "机械设备定位-围栏相关Api")
|
||||
public class MechanicalEquipmentPositionFenceController {
|
||||
@Autowired
|
||||
private IMechanicalEquipmentPositionFenceService mechanicalEquipmentPositionFenceService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "分页列表查询机械设备定位-围栏信息", notes = "分页列表查询机械设备定位-围栏信息", httpMethod = "GET")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
|
||||
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
|
||||
})
|
||||
@GetMapping(value = "/page")
|
||||
public Result<IPage<MechanicalEquipmentPositionFence>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {
|
||||
return Result.success(mechanicalEquipmentPositionFenceService.queryPageList(paramMap));
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "列表查询机械设备定位-围栏信息", notes = "列表查询机械设备定位-围栏信息", httpMethod = "GET")
|
||||
@ApiImplicitParams({
|
||||
})
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<MechanicalEquipmentPositionFence>> queryList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {
|
||||
return Result.success(mechanicalEquipmentPositionFenceService.queryList(paramMap));
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param mechanicalEquipmentPositionFence
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "添加机械设备定位-围栏信息", notes = "添加机械设备定位-围栏信息", httpMethod = "POST")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<MechanicalEquipmentPositionFence> add(@RequestBody MechanicalEquipmentPositionFence mechanicalEquipmentPositionFence) {
|
||||
mechanicalEquipmentPositionFence.setId(null);
|
||||
mechanicalEquipmentPositionFenceService.save(mechanicalEquipmentPositionFence);
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param mechanicalEquipmentPositionFence
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "编辑机械设备定位-围栏信息", notes = "编辑机械设备定位-围栏信息", httpMethod = "POST")
|
||||
@PostMapping(value = "/edit")
|
||||
public Result<MechanicalEquipmentPositionFence> edit(@RequestBody MechanicalEquipmentPositionFence mechanicalEquipmentPositionFence) {
|
||||
mechanicalEquipmentPositionFenceService.updateById(mechanicalEquipmentPositionFence);
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "删除机械设备定位-围栏信息", notes = "删除机械设备定位-围栏信息", httpMethod = "POST")
|
||||
@ApiImplicitParam(name = "id", value = "机械设备定位-围栏ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}")
|
||||
@PostMapping(value = "/delete")
|
||||
public Result<MechanicalEquipmentPositionFence> delete(@ApiIgnore @RequestBody HashMap<String, Object> map) {
|
||||
String id = MapUtils.getString(map, "id");
|
||||
Result<MechanicalEquipmentPositionFence> result = new Result<MechanicalEquipmentPositionFence>();
|
||||
MechanicalEquipmentPositionFence mechanicalEquipmentPositionFence = mechanicalEquipmentPositionFenceService.getById(id);
|
||||
if (mechanicalEquipmentPositionFence == null) {
|
||||
result.error500("未找到对应实体");
|
||||
} else {
|
||||
boolean ok = mechanicalEquipmentPositionFenceService.removeById(id);
|
||||
if (ok) {
|
||||
result.success("删除成功!");
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "批量删除机械设备定位-围栏信息", notes = "批量删除机械设备定位-围栏信息", httpMethod = "POST")
|
||||
@ApiImplicitParam(name = "ids", value = "机械设备定位-围栏ID字符串(多个以,分割)", paramType = "body", required = true, dataType = "String")
|
||||
@PostMapping(value = "/deleteBatch")
|
||||
public Result<MechanicalEquipmentPositionFence> deleteBatch(@ApiIgnore @RequestBody HashMap<String, Object> paramMap) {
|
||||
String ids = MapUtils.getString(paramMap, "ids");
|
||||
Result<MechanicalEquipmentPositionFence> result = new Result<>();
|
||||
if (ids == null || "".equals(ids.trim())) {
|
||||
result.error500("参数不识别!");
|
||||
} else {
|
||||
this.mechanicalEquipmentPositionFenceService.removeByIds(Arrays.asList(ids.split(",")));
|
||||
result.success("删除成功!");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "通过id查询机械设备定位-围栏信息", notes = "通过id查询机械设备定位-围栏信息", httpMethod = "GET")
|
||||
@ApiImplicitParam(name = "id", value = "机械设备定位-围栏ID", paramType = "query", required = true, dataType = "Integer")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<MechanicalEquipmentPositionFence> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
Result<MechanicalEquipmentPositionFence> result = new Result<MechanicalEquipmentPositionFence>();
|
||||
MechanicalEquipmentPositionFence mechanicalEquipmentPositionFence = mechanicalEquipmentPositionFenceService.getById(id);
|
||||
if (mechanicalEquipmentPositionFence == null) {
|
||||
result.error500("未找到对应实体");
|
||||
} else {
|
||||
result.setResult(mechanicalEquipmentPositionFence);
|
||||
result.setSuccess(true);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,74 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
/**
|
||||
* @Description: 机械设备定位-日行数据
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("mechanical_equipment_position_day_record")
|
||||
@ApiModel(value = "MechanicalEquipmentPositionDayRecord实体类", description = "MechanicalEquipmentPositionDayRecord")
|
||||
public class MechanicalEquipmentPositionDayRecord implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@ApiModelProperty(value = "主键id")
|
||||
private Long id;
|
||||
/**
|
||||
* 设备序号
|
||||
*/
|
||||
@Excel(name = "设备序号", width = 15)
|
||||
@ApiModelProperty(value = "设备序号")
|
||||
private String devSn;
|
||||
/**
|
||||
* 每日轨迹距离
|
||||
*/
|
||||
@Excel(name = "每日轨迹距离", width = 15)
|
||||
@ApiModelProperty(value = "每日轨迹距离")
|
||||
private Double trackDistanceDay;
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
@Excel(name = "日期", width = 15)
|
||||
@ApiModelProperty(value = "日期")
|
||||
private String day;
|
||||
/**
|
||||
* 项目sn
|
||||
*/
|
||||
@Excel(name = "项目sn", width = 15)
|
||||
@ApiModelProperty(value = "项目sn")
|
||||
private String projectSn;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
private Date updateTime;
|
||||
}
|
||||
@ -72,6 +72,14 @@ public class MechanicalEquipmentPositionDev implements Serializable {
|
||||
@Excel(name = "项目sn", width = 15)
|
||||
@ApiModelProperty(value = "项目sn")
|
||||
private java.lang.String projectSn;
|
||||
/**
|
||||
* 心跳时间
|
||||
*/
|
||||
@Excel(name = "心跳时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "心跳时间")
|
||||
private java.util.Date heartbeatTime;
|
||||
|
||||
@ApiModelProperty(value = "司机名称")
|
||||
@TableField(exist = false)
|
||||
|
||||
@ -0,0 +1,99 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
/**
|
||||
* @Description: 机械设备定位-围栏
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("mechanical_equipment_position_fence")
|
||||
@ApiModel(value = "MechanicalEquipmentPositionFence实体类", description = "MechanicalEquipmentPositionFence")
|
||||
public class MechanicalEquipmentPositionFence implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@ApiModelProperty(value = "主键id")
|
||||
private Long id;
|
||||
/**
|
||||
* 围栏名称
|
||||
*/
|
||||
@Excel(name = "围栏名称", width = 15)
|
||||
@ApiModelProperty(value = "围栏名称")
|
||||
private String fenceName;
|
||||
/**
|
||||
* 范围类型:1标准区域2自定义
|
||||
*/
|
||||
@Excel(name = "范围类型:1标准区域2自定义", width = 15)
|
||||
@ApiModelProperty(value = "范围类型:1标准区域2自定义")
|
||||
private Integer rangeType;
|
||||
/**
|
||||
* 区域半径
|
||||
*/
|
||||
@Excel(name = "区域半径", width = 15)
|
||||
@ApiModelProperty(value = "区域半径")
|
||||
private Integer areaRadius;
|
||||
/**
|
||||
* 圆心经度
|
||||
*/
|
||||
@Excel(name = "圆心经度", width = 15)
|
||||
@ApiModelProperty(value = "圆心经度")
|
||||
private Double longitude;
|
||||
/**
|
||||
* 圆心维度
|
||||
*/
|
||||
@Excel(name = "圆心维度", width = 15)
|
||||
@ApiModelProperty(value = "圆心维度")
|
||||
private Double latitude;
|
||||
/**
|
||||
* 围栏形状(坐标对见用“| ”分隔;经度和纬度用","分隔)
|
||||
*/
|
||||
@Excel(name = "围栏形状(坐标对见用“| ”分隔;经度和纬度用”,“分隔)", width = 15)
|
||||
@ApiModelProperty(value = "围栏形状(坐标对见用“| ”分隔;经度和纬度用“,“分隔)")
|
||||
private String fenceShape;
|
||||
@ApiModelProperty(value = "围栏形状json数组")
|
||||
private String fenceShapeArr;
|
||||
/**
|
||||
* 项目sn
|
||||
*/
|
||||
@Excel(name = "项目sn", width = 15)
|
||||
@ApiModelProperty(value = "项目sn")
|
||||
private String projectSn;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
private Date updateTime;
|
||||
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "围栏内人数")
|
||||
private Integer workerNum;
|
||||
}
|
||||
@ -23,4 +23,6 @@ public interface MechanicalEquipmentPositionDataMapper extends BaseMapper<Mechan
|
||||
IPage<MechanicalEquipmentPositionData> queryList(Page<MechanicalEquipmentPositionData> page, @Param(Constants.WRAPPER) QueryWrapper<MechanicalEquipmentPositionData> queryWrapper);
|
||||
|
||||
List<MechanicalEquipmentPositionData> queryList(@Param(Constants.WRAPPER) QueryWrapper<MechanicalEquipmentPositionData> queryWrapper);
|
||||
|
||||
List<MechanicalEquipmentPositionData> getNewestData(String projectSn);
|
||||
}
|
||||
|
||||
@ -0,0 +1,32 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDayRecord;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 机械设备定位-日行数据
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface MechanicalEquipmentPositionDayRecordMapper extends BaseMapper<MechanicalEquipmentPositionDayRecord> {
|
||||
|
||||
IPage<MechanicalEquipmentPositionDayRecord> pageList(Page<MechanicalEquipmentPositionDayRecord> page, @Param("p") HashMap<String, Object> paramMap);
|
||||
|
||||
List<MechanicalEquipmentPositionDayRecord> pageList(@Param("p") HashMap<String, Object> paramMap);
|
||||
|
||||
MechanicalEquipmentPositionDayRecord getTodayBeginData(String devSn);
|
||||
}
|
||||
@ -5,10 +5,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDev;
|
||||
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@ -23,4 +25,6 @@ public interface MechanicalEquipmentPositionDevMapper extends BaseMapper<Mechani
|
||||
IPage<MechanicalEquipmentPositionDev> queryList(Page<MechanicalEquipmentPositionDev> page, @Param(Constants.WRAPPER) QueryWrapper<MechanicalEquipmentPositionDev> queryWrapper);
|
||||
|
||||
List<MechanicalEquipmentPositionDev> queryList(@Param(Constants.WRAPPER) QueryWrapper<MechanicalEquipmentPositionDev> queryWrapper);
|
||||
|
||||
CountVehiclePositionDevVo countDev(HashMap<String, Object> paramMap);
|
||||
}
|
||||
|
||||
@ -0,0 +1,16 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper;
|
||||
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionFence;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* @Description: 机械设备定位-围栏
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface MechanicalEquipmentPositionFenceMapper extends BaseMapper<MechanicalEquipmentPositionFence> {
|
||||
|
||||
}
|
||||
@ -8,4 +8,15 @@
|
||||
left join mechanical_equipment_position_dev mepd2 on mepd.dev_sn = mepd2.dev_sn
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
|
||||
<select id="getNewestData"
|
||||
resultType="com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionData">
|
||||
select *
|
||||
from mechanical_equipment_position_data shd
|
||||
join (select max(create_time) as create_time, dev_sn
|
||||
from mechanical_equipment_position_data
|
||||
where project_sn = #{projectSn}
|
||||
group by dev_sn) t on t.create_time = shd.create_time and t.dev_sn=shd.dev_sn
|
||||
group by shd.dev_sn
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper.MechanicalEquipmentPositionDayRecordMapper">
|
||||
<select id="pageList"
|
||||
resultType="com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDayRecord">
|
||||
select *
|
||||
from mechanical_equipment_position_day_record
|
||||
where 1 = 1
|
||||
<if test="p.devSn != null and p.devSn != ''">
|
||||
and dev_sn = #{p.devSn}
|
||||
</if>
|
||||
<if test="p.month != null and p.month != ''">
|
||||
and day >= concat(#{p.month},'-01')
|
||||
and day <![CDATA[<=]]> concat(#{p.month},'31')
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="getTodayBeginData"
|
||||
resultType="com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDayRecord">
|
||||
select *
|
||||
from mechanical_equipment_position_day_record
|
||||
where dev_sn = #{devSn}
|
||||
and create_time >= current_date
|
||||
order by create_time
|
||||
limit 1
|
||||
</select>
|
||||
</mapper>
|
||||
@ -3,9 +3,31 @@
|
||||
<mapper namespace="com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper.MechanicalEquipmentPositionDevMapper">
|
||||
<select id="queryList"
|
||||
resultType="com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDev">
|
||||
select mepd.*,wi.worker_name driver_name
|
||||
select mepd.*,wi.worker_name driver_name,IFNULL(((case
|
||||
when round((UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(heartbeat_time)) / 60) <= 30
|
||||
then 1
|
||||
else 0 end)),0) online
|
||||
from mechanical_equipment_position_dev mepd
|
||||
left join worker_info wi on mepd.project_sn = wi.project_sn and wi.id=mepd.driver_id
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
|
||||
<select id="countDev" resultType="com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo">
|
||||
select count(*) count,
|
||||
IFNULL(sum(IFNULL(((case
|
||||
when round((UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(heartbeat_time)) / 60) <= 30
|
||||
then 1
|
||||
else 0 end)), 0)),0) onlineCount,
|
||||
IFNULL(sum(IFNULL(((case
|
||||
when round((UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(heartbeat_time)) / 60) > 30 then 1
|
||||
else 0 end)), 0)),0) offlineCount
|
||||
from mechanical_equipment_position_dev
|
||||
where 1 = 1
|
||||
<if test="devSn != null and devSn != ''">
|
||||
and dev_sn = #{devSn}
|
||||
</if>
|
||||
<if test="projectSn != null and projectSn != ''">
|
||||
and project_sn = #{projectSn}
|
||||
</if>
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper.MechanicalEquipmentPositionFenceMapper">
|
||||
</mapper>
|
||||
@ -0,0 +1,23 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDayRecord;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 机械设备定位-日行数据
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
public interface IMechanicalEquipmentPositionDayRecordService extends IService<MechanicalEquipmentPositionDayRecord> {
|
||||
|
||||
IPage<MechanicalEquipmentPositionDayRecord> queryPageList(HashMap<String, Object> paramMap);
|
||||
|
||||
List<MechanicalEquipmentPositionDayRecord> queryList(HashMap<String, Object> paramMap);
|
||||
|
||||
void add(MechanicalEquipmentPositionDayRecord mechanicalEquipmentPositionDayRecord);
|
||||
}
|
||||
@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.mechanicalequipmentposition.service;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDev;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@ -24,4 +25,7 @@ public interface IMechanicalEquipmentPositionDevService extends IService<Mechani
|
||||
void edit(MechanicalEquipmentPositionDev mechanicalEquipmentPositionDev);
|
||||
|
||||
void delete(String id);
|
||||
|
||||
CountVehiclePositionDevVo countDev(HashMap<String, Object> paramMap);
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,21 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionFence;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 机械设备定位-围栏
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
public interface IMechanicalEquipmentPositionFenceService extends IService<MechanicalEquipmentPositionFence> {
|
||||
|
||||
IPage<MechanicalEquipmentPositionFence> queryPageList(HashMap<String, Object> paramMap);
|
||||
|
||||
List<MechanicalEquipmentPositionFence> queryList(HashMap<String, Object> paramMap);
|
||||
}
|
||||
@ -0,0 +1,64 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.zhgd.jeecg.common.execption.OpenAlertException;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDayRecord;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDev;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper.MechanicalEquipmentPositionDayRecordMapper;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper.MechanicalEquipmentPositionDevMapper;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.service.IMechanicalEquipmentPositionDayRecordService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.zhgd.jeecg.common.system.query.QueryGenerator;
|
||||
import com.zhgd.xmgl.util.PageUtil;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
import com.zhgd.xmgl.util.RefUtil;
|
||||
|
||||
/**
|
||||
* @Description: 机械设备定位-日行数据
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class MechanicalEquipmentPositionDayRecordServiceImpl extends ServiceImpl<MechanicalEquipmentPositionDayRecordMapper, MechanicalEquipmentPositionDayRecord> implements IMechanicalEquipmentPositionDayRecordService {
|
||||
@Autowired
|
||||
MechanicalEquipmentPositionDevMapper mechanicalEquipmentPositionDevMapper;
|
||||
|
||||
@Override
|
||||
public IPage<MechanicalEquipmentPositionDayRecord> queryPageList(HashMap<String, Object> paramMap) {
|
||||
Page<MechanicalEquipmentPositionDayRecord> page = PageUtil.getPage(paramMap);
|
||||
IPage<MechanicalEquipmentPositionDayRecord> pageList = baseMapper.pageList(page, paramMap);
|
||||
pageList.setRecords(dealList(pageList.getRecords()));
|
||||
return pageList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MechanicalEquipmentPositionDayRecord> queryList(HashMap<String, Object> paramMap) {
|
||||
return dealList(baseMapper.pageList(paramMap));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void add(MechanicalEquipmentPositionDayRecord mechanicalEquipmentPositionDayRecord) {
|
||||
MechanicalEquipmentPositionDev dev = mechanicalEquipmentPositionDevMapper.selectOne(new LambdaQueryWrapper<MechanicalEquipmentPositionDev>()
|
||||
.eq(MechanicalEquipmentPositionDev::getDevSn, mechanicalEquipmentPositionDayRecord.getDevSn()));
|
||||
if (dev == null) {
|
||||
throw new OpenAlertException("设备不存在");
|
||||
}
|
||||
mechanicalEquipmentPositionDayRecord.setProjectSn(dev.getProjectSn());
|
||||
mechanicalEquipmentPositionDayRecord.setId(null);
|
||||
save(mechanicalEquipmentPositionDayRecord);
|
||||
}
|
||||
|
||||
|
||||
private List<MechanicalEquipmentPositionDayRecord> dealList(List<MechanicalEquipmentPositionDayRecord> list) {
|
||||
return list;
|
||||
}
|
||||
}
|
||||
@ -1,12 +1,15 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.zhgd.jeecg.common.execption.OpenAlertException;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionDev;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper.MechanicalEquipmentPositionDevMapper;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.service.IMechanicalEquipmentPositionDevService;
|
||||
import com.zhgd.xmgl.modules.safetyhat.entity.SafetyHatDev;
|
||||
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@ -15,6 +18,7 @@ import com.zhgd.jeecg.common.system.query.QueryGenerator;
|
||||
import com.zhgd.xmgl.util.PageUtil;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
@ -53,6 +57,15 @@ public class MechanicalEquipmentPositionDevServiceImpl extends ServiceImpl<Mecha
|
||||
String alias = "mepd.";
|
||||
QueryWrapper<MechanicalEquipmentPositionDev> queryWrapper = QueryGenerator.initPageQueryWrapper(MechanicalEquipmentPositionDev.class, paramMap, alias);
|
||||
queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(MechanicalEquipmentPositionDev::getId));
|
||||
Integer online = MapUtils.getInteger(paramMap, "online");
|
||||
if (online != null) {
|
||||
String dateTime = DateUtil.formatDateTime(DateUtil.offsetMinute(new Date(), -30));
|
||||
if (online == 1) {
|
||||
queryWrapper.ge(alias + RefUtil.fieldNameUlc(MechanicalEquipmentPositionDev::getHeartbeatTime), dateTime);
|
||||
} else {
|
||||
queryWrapper.lt(alias + RefUtil.fieldNameUlc(MechanicalEquipmentPositionDev::getHeartbeatTime), dateTime);
|
||||
}
|
||||
}
|
||||
return queryWrapper;
|
||||
}
|
||||
|
||||
@ -62,10 +75,10 @@ public class MechanicalEquipmentPositionDevServiceImpl extends ServiceImpl<Mecha
|
||||
|
||||
@Override
|
||||
public void add(MechanicalEquipmentPositionDev mechanicalEquipmentPositionDev) {
|
||||
List<MechanicalEquipmentPositionDev> safetyHatDevList = mechanicalEquipmentPositionDevMapper.selectList(new LambdaQueryWrapper<MechanicalEquipmentPositionDev>()
|
||||
List<MechanicalEquipmentPositionDev> mechanicalEquipmentPositionDevList = mechanicalEquipmentPositionDevMapper.selectList(new LambdaQueryWrapper<MechanicalEquipmentPositionDev>()
|
||||
.eq(MechanicalEquipmentPositionDev::getDevSn, mechanicalEquipmentPositionDev.getDevSn())
|
||||
);
|
||||
if (CollUtil.isNotEmpty(safetyHatDevList)) {
|
||||
if (CollUtil.isNotEmpty(mechanicalEquipmentPositionDevList)) {
|
||||
throw new OpenAlertException("设备sn已存在");
|
||||
}
|
||||
mechanicalEquipmentPositionDev.setId(null);
|
||||
@ -74,11 +87,11 @@ public class MechanicalEquipmentPositionDevServiceImpl extends ServiceImpl<Mecha
|
||||
|
||||
@Override
|
||||
public void edit(MechanicalEquipmentPositionDev mechanicalEquipmentPositionDev) {
|
||||
List<MechanicalEquipmentPositionDev> safetyHatDevList = mechanicalEquipmentPositionDevMapper.selectList(new LambdaQueryWrapper<MechanicalEquipmentPositionDev>()
|
||||
List<MechanicalEquipmentPositionDev> mechanicalEquipmentPositionDevList = mechanicalEquipmentPositionDevMapper.selectList(new LambdaQueryWrapper<MechanicalEquipmentPositionDev>()
|
||||
.eq(MechanicalEquipmentPositionDev::getDevSn, mechanicalEquipmentPositionDev.getDevSn())
|
||||
.ne(MechanicalEquipmentPositionDev::getId, mechanicalEquipmentPositionDev.getId())
|
||||
);
|
||||
if (CollUtil.isNotEmpty(safetyHatDevList)) {
|
||||
if (CollUtil.isNotEmpty(mechanicalEquipmentPositionDevList)) {
|
||||
throw new OpenAlertException("设备sn已存在");
|
||||
}
|
||||
baseMapper.updateById(mechanicalEquipmentPositionDev);
|
||||
@ -93,5 +106,10 @@ public class MechanicalEquipmentPositionDevServiceImpl extends ServiceImpl<Mecha
|
||||
baseMapper.deleteById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CountVehiclePositionDevVo countDev(HashMap<String, Object> paramMap) {
|
||||
return baseMapper.countDev(paramMap);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,95 @@
|
||||
package com.zhgd.xmgl.modules.mechanicalequipmentposition.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionData;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.entity.MechanicalEquipmentPositionFence;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper.MechanicalEquipmentPositionDataMapper;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.mapper.MechanicalEquipmentPositionFenceMapper;
|
||||
import com.zhgd.xmgl.modules.mechanicalequipmentposition.service.IMechanicalEquipmentPositionFenceService;
|
||||
import com.zhgd.xmgl.util.RegionUtil;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.zhgd.jeecg.common.system.query.QueryGenerator;
|
||||
import com.zhgd.xmgl.util.PageUtil;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
import com.zhgd.xmgl.util.RefUtil;
|
||||
|
||||
/**
|
||||
* @Description: 机械设备定位-围栏
|
||||
* @author: pds
|
||||
* @date: 2023-11-14
|
||||
* @version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class MechanicalEquipmentPositionFenceServiceImpl extends ServiceImpl<MechanicalEquipmentPositionFenceMapper, MechanicalEquipmentPositionFence> implements IMechanicalEquipmentPositionFenceService {
|
||||
@Autowired
|
||||
private MechanicalEquipmentPositionDataMapper mechanicalEquipmentPositionDataMapper;
|
||||
|
||||
@Override
|
||||
public IPage<MechanicalEquipmentPositionFence> queryPageList(HashMap<String, Object> paramMap) {
|
||||
QueryWrapper<MechanicalEquipmentPositionFence> queryWrapper = getQueryWrapper(paramMap);
|
||||
Page<MechanicalEquipmentPositionFence> page = PageUtil.getPage(paramMap);
|
||||
IPage<MechanicalEquipmentPositionFence> pageList = this.page(page, queryWrapper);
|
||||
pageList.setRecords(dealList(pageList.getRecords(), paramMap));
|
||||
return pageList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MechanicalEquipmentPositionFence> queryList(HashMap<String, Object> paramMap) {
|
||||
QueryWrapper<MechanicalEquipmentPositionFence> queryWrapper = getQueryWrapper(paramMap);
|
||||
return dealList(this.list(queryWrapper), paramMap);
|
||||
}
|
||||
|
||||
private QueryWrapper<MechanicalEquipmentPositionFence> getQueryWrapper(HashMap<String, Object> paramMap) {
|
||||
QueryWrapper<MechanicalEquipmentPositionFence> queryWrapper = QueryGenerator.initPageQueryWrapper(MechanicalEquipmentPositionFence.class, paramMap);
|
||||
queryWrapper.orderByDesc(RefUtil.fieldNameUlc(MechanicalEquipmentPositionFence::getId));
|
||||
return queryWrapper;
|
||||
}
|
||||
|
||||
private List<MechanicalEquipmentPositionFence> dealList(List<MechanicalEquipmentPositionFence> list, HashMap<String, Object> paramMap) {
|
||||
String projectSn = MapUtils.getString(paramMap, "projectSn");
|
||||
for (MechanicalEquipmentPositionFence fence : list) {
|
||||
List<MechanicalEquipmentPositionData> dataList = mechanicalEquipmentPositionDataMapper.getNewestData(projectSn);
|
||||
int workerNum = 0;
|
||||
if (CollUtil.isNotEmpty(dataList)) {
|
||||
for (MechanicalEquipmentPositionData d : dataList) {
|
||||
boolean inFence = false;
|
||||
//判断是否在围栏范围内
|
||||
if (Objects.equals(fence.getRangeType(), 1)) {
|
||||
inFence = RegionUtil.isInCircle(d.getLongitude(), d.getLatitude(), fence.getLongitude(), fence.getLatitude(), fence.getAreaRadius());
|
||||
} else if (Objects.equals(fence.getRangeType(), 2)) {
|
||||
String fenceShape = fence.getFenceShape();
|
||||
if (StrUtil.isNotBlank(fenceShape)) {
|
||||
String[] couples = StringUtils.split(fenceShape, ",");
|
||||
Double[] lon = new Double[couples.length];
|
||||
Double[] lat = new Double[couples.length];
|
||||
for (int i = 0; i < couples.length; i++) {
|
||||
String couple = couples[i];
|
||||
String[] two = StringUtils.split(couple, "|");
|
||||
lon[i] = Double.valueOf(two[0]);
|
||||
lat[i] = Double.valueOf(two[1]);
|
||||
}
|
||||
inFence = RegionUtil.isInPolygon(d.getLongitude(), d.getLatitude(), lon, lat);
|
||||
}
|
||||
}
|
||||
if (inFence) {
|
||||
workerNum++;
|
||||
}
|
||||
}
|
||||
fence.setWorkerNum(workerNum);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user