Commit 7185f1e3 by chenjunxiong

build(server): 门禁设备配置功能开发

parent 04092c3e
......@@ -23,7 +23,7 @@
data () {
return {
title:'',
width:800,
width:1400,
visible: false,
disableSubmit: false
}
......
......@@ -19,6 +19,7 @@ import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.List;
/**
* @Description: pm_access_control_device
......@@ -31,6 +32,9 @@ import java.util.Arrays;
@RequestMapping("/pm/pmAccessControlDevice")
@Slf4j
public class PmAccessControlDeviceController extends JeecgController<PmAccessControlDevice, IPmAccessControlDeviceService> {
private static final List<String> TYPES = Arrays.asList("type-1", "type-2", "type-3");
@Autowired
private IPmAccessControlDeviceService pmAccessControlDeviceService;
......@@ -51,7 +55,7 @@ public class PmAccessControlDeviceController extends JeecgController<PmAccessCon
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<PmAccessControlDevice> queryWrapper = QueryGenerator.initQueryWrapper(pmAccessControlDevice, req.getParameterMap());
Page<PmAccessControlDevice> page = new Page<PmAccessControlDevice>(pageNo, pageSize);
Page<PmAccessControlDevice> page = new Page<>(pageNo, pageSize);
IPage<PmAccessControlDevice> pageList = pmAccessControlDeviceService.page(page, queryWrapper);
return Result.OK(pageList);
}
......@@ -152,4 +156,8 @@ public class PmAccessControlDeviceController extends JeecgController<PmAccessCon
return super.importExcel(request, response, PmAccessControlDevice.class);
}
@GetMapping("/types")
public Result<List<String>> getTypes() {
return Result.OK(TYPES);
}
}
package org.jeecg.modules.demo.pm.controller;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.demo.pm.entity.PmBuildingInfo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Arrays;
import java.util.List;
/**
* <p>
*
* </p>
*
* @author 陈俊雄
* @since 2022/3/17
*/
@Api(tags = "pm_access_control_device")
@RestController
@RequestMapping("/pm/pmBuildingInfo")
@Slf4j
public class PmBuildingInfoController {
private static final List<PmBuildingInfo> BUILDING_INFOS = Arrays.asList(
new PmBuildingInfo()
.setName("望海路1号楼")
.setFloorList(Arrays.asList("-2F", "-1F", "1F", "2F", "3F")),
new PmBuildingInfo()
.setName("望海路2号楼")
.setFloorList(Arrays.asList("-3F", "-2F", "-1F", "1F", "2F", "3F", "4F"))
);
@GetMapping("/list")
public Result<List<PmBuildingInfo>> list() {
return Result.OK(BUILDING_INFOS);
}
}
package org.jeecg.modules.demo.pm.entity;
import com.baomidou.mybatisplus.extension.handlers.AbstractJsonTypeHandler;
import com.chanjx.utils.JsonUtils;
import com.fasterxml.jackson.core.JsonProcessingException;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import lombok.extern.slf4j.Slf4j;
import java.io.Serializable;
/**
* <p>
*
* </p>
*
* @author 陈俊雄
* @since 2022/3/17
*/
@Slf4j
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Coordinate implements Serializable {
private Float x;
private Float y;
@Slf4j
public static class TypeHandler extends AbstractJsonTypeHandler<Coordinate> {
@Override
protected Coordinate parse(String json) {
try {
return JsonUtils.json2Obj(json, Coordinate.class);
} catch (JsonProcessingException e) {
log.error("Json反序列化失败!", e);
}
return null;
}
@Override
protected String toJson(Coordinate obj) {
try {
return JsonUtils.obj2Json(obj);
} catch (JsonProcessingException e) {
log.error("Json序列化失败!", e);
}
return null;
}
}
}
package org.jeecg.modules.demo.pm.entity;
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 com.fasterxml.jackson.annotation.JsonFormat;
......@@ -9,6 +10,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
......@@ -22,7 +24,7 @@ import java.util.Date;
* @Version: V1.0
*/
@Data
@TableName("pm_access_control_device")
@TableName(value = "pm_access_control_device", autoResultMap = true)
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "pm_access_control_device对象", description = "pm_access_control_device")
......@@ -42,6 +44,12 @@ public class PmAccessControlDevice implements Serializable {
@ApiModelProperty(value = "设备编码")
private String code;
/**
* 设备类型
*/
@Excel(name = "设备类型", width = 15)
@ApiModelProperty(value = "设备类型")
private String type;
/**
* 设备名称
*/
@Excel(name = "设备名称", width = 15)
......@@ -64,7 +72,7 @@ public class PmAccessControlDevice implements Serializable {
*/
@Excel(name = "楼层", width = 15)
@ApiModelProperty(value = "楼层")
private Integer floor;
private String floor;
/**
* 设备位置
*/
......@@ -76,7 +84,8 @@ public class PmAccessControlDevice implements Serializable {
*/
@Excel(name = "xy值", width = 15)
@ApiModelProperty(value = "xy值")
private String coordinate;
@TableField(typeHandler = Coordinate.TypeHandler.class)
private Coordinate coordinate;
/**
* 开门时间
*/
......@@ -110,11 +119,9 @@ public class PmAccessControlDevice implements Serializable {
/**
* 生产厂商
*/
@Excel(name = "生产厂商", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Excel(name = "生产厂商", width = 15)
@ApiModelProperty(value = "生产厂商")
private Date manufacturer;
private String manufacturer;
/**
* 状态
*/
......@@ -126,17 +133,19 @@ public class PmAccessControlDevice implements Serializable {
*/
@Excel(name = "创建人Id(sys_user)", width = 15)
@ApiModelProperty(value = "创建人Id(sys_user)")
@Dict(dictTable = "sys_user", dicText = "realname", dicCode = "id")
private String createUserId;
/**
* 修改人Id(sys_user)
*/
@Excel(name = "修改人Id(sys_user)", width = 15)
@ApiModelProperty(value = "修改人Id(sys_user)")
@Dict(dictTable = "sys_user", dicText = "realname", dicCode = "id")
private String modifyUserId;
/**
* 创建时间
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd hh:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "创建时间")
private Date createTime;
......
package org.jeecg.modules.demo.pm.entity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import lombok.extern.slf4j.Slf4j;
import java.io.Serializable;
import java.util.List;
/**
* <p>
*
* </p>
*
* @author 陈俊雄
* @since 2022/3/17
*/
@Slf4j
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class PmBuildingInfo implements Serializable {
private String name;
private List<String> floorList;
}
package org.jeecg.modules.demo.pm.entity;
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 com.fasterxml.jackson.annotation.JsonFormat;
......@@ -9,6 +10,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
......@@ -22,7 +24,7 @@ import java.util.Date;
* @Version: V1.0
*/
@Data
@TableName("pm_monitoring_device")
@TableName(value = "pm_monitoring_device", autoResultMap = true)
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "pm_monitoring_device对象", description = "pm_monitoring_device")
......@@ -42,6 +44,12 @@ public class PmMonitoringDevice implements Serializable {
@ApiModelProperty(value = "设备编码")
private String code;
/**
* 设备类型
*/
@Excel(name = "设备类型", width = 15)
@ApiModelProperty(value = "设备类型")
private String type;
/**
* 设备名称
*/
@Excel(name = "设备名称", width = 15)
......@@ -64,7 +72,7 @@ public class PmMonitoringDevice implements Serializable {
*/
@Excel(name = "楼层", width = 15)
@ApiModelProperty(value = "楼层")
private Integer floor;
private String floor;
/**
* 设备位置
*/
......@@ -76,7 +84,8 @@ public class PmMonitoringDevice implements Serializable {
*/
@Excel(name = "xy值", width = 15)
@ApiModelProperty(value = "xy值")
private String coordinate;
@TableField(typeHandler = Coordinate.TypeHandler.class)
private Coordinate coordinate;
/**
* 生产日期
*/
......@@ -104,11 +113,9 @@ public class PmMonitoringDevice implements Serializable {
/**
* 生产厂商
*/
@Excel(name = "生产厂商", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@Excel(name = "生产厂商", width = 15)
@ApiModelProperty(value = "生产厂商")
private Date manufacturer;
private String manufacturer;
/**
* 状态
*/
......@@ -120,12 +127,14 @@ public class PmMonitoringDevice implements Serializable {
*/
@Excel(name = "创建人Id(sys_user)", width = 15)
@ApiModelProperty(value = "创建人Id(sys_user)")
@Dict(dictTable = "sys_user", dicText = "realname", dicCode = "id")
private String createUserId;
/**
* 修改人Id(sys_user)
*/
@Excel(name = "修改人Id(sys_user)", width = 15)
@ApiModelProperty(value = "修改人Id(sys_user)")
@Dict(dictTable = "sys_user", dicText = "realname", dicCode = "id")
private String modifyUserId;
/**
* 创建时间
......
package org.jeecg.modules.demo.pm.service.impl;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import org.jeecg.modules.demo.pm.entity.PmAccessControlDevice;
import org.jeecg.modules.demo.pm.mapper.PmAccessControlDeviceMapper;
import org.jeecg.modules.demo.pm.service.IPmAccessControlDeviceService;
......@@ -7,6 +8,8 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.Date;
/**
* @Description: pm_access_control_device
* @Author: jeecg-boot
......@@ -15,5 +18,17 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
*/
@Service
public class PmAccessControlDeviceServiceImpl extends ServiceImpl<PmAccessControlDeviceMapper, PmAccessControlDevice> implements IPmAccessControlDeviceService {
@Override
public boolean save(PmAccessControlDevice entity) {
entity.setId(IdWorker.getId())
.setCreateTime(new Date())
.setModifyTime(new Date());
return super.save(entity);
}
@Override
public boolean updateById(PmAccessControlDevice entity) {
entity.setModifyTime(new Date());
return super.updateById(entity);
}
}
package org.jeecg.modules.system.entity;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment