社区大门 增删改查完成
This commit is contained in:
parent
6203e43465
commit
7f8a0f8d60
@ -0,0 +1,16 @@
|
|||||||
|
package com.cxyxiaomo.epp.common.pojo;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@Accessors(chain = true) // 链式写法
|
||||||
|
public class Gate implements Serializable {
|
||||||
|
private Long id;
|
||||||
|
private String name;
|
||||||
|
private Boolean open;
|
||||||
|
}
|
@ -0,0 +1,65 @@
|
|||||||
|
package com.cxyxiaomo.epp.common.vo;
|
||||||
|
|
||||||
|
import com.cxyxiaomo.epp.common.pojo.Gate;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
import org.springframework.beans.BeanUtils;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
// 数据库关系映射
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@Accessors(chain = true) // 链式写法
|
||||||
|
// 微服务必须要实现Serializable
|
||||||
|
public class GateVO implements Serializable {
|
||||||
|
|
||||||
|
private String id;
|
||||||
|
private String name;
|
||||||
|
private Boolean open;
|
||||||
|
|
||||||
|
public static GateVO convertFrom(Gate gate) {
|
||||||
|
if (gate == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
GateVO gateVO = new GateVO();
|
||||||
|
BeanUtils.copyProperties(gate, gateVO);
|
||||||
|
if (Objects.nonNull(gate.getId())) {
|
||||||
|
gateVO.setId(String.valueOf(gate.getId()));
|
||||||
|
}
|
||||||
|
return gateVO;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static List<GateVO> convertFrom(List<Gate> gateList) {
|
||||||
|
if (gateList == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
List<GateVO> gateVOList = gateList.stream()
|
||||||
|
.map(GateVO::convertFrom).collect(Collectors.toList());
|
||||||
|
return gateVOList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Gate convertTo(GateVO gateVO) {
|
||||||
|
if (gateVO == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
Gate gate = new Gate();
|
||||||
|
BeanUtils.copyProperties(gateVO, gate);
|
||||||
|
try {
|
||||||
|
if (Objects.nonNull(gateVO.getId())) {
|
||||||
|
Long gateId = Long.valueOf(gateVO.getId());
|
||||||
|
gate.setId(gateId);
|
||||||
|
} else {
|
||||||
|
gate.setId(null);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
gate.setId(null);
|
||||||
|
}
|
||||||
|
return gate;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,194 @@
|
|||||||
|
package com.cxyxiaomo.epp.access.controller;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson2.JSONArray;
|
||||||
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.enums.AddType;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.enums.EditType;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.enums.FieldType;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.enums.SearchType;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.query.PageQuery;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.utils.FieldBuilder;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.utils.FieldMapperBuilder;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.utils.FieldRuleBuilder;
|
||||||
|
import com.cxyxiaomo.epp.PageTable.utils.FieldRuleListBuilder;
|
||||||
|
import com.cxyxiaomo.epp.access.service.GateService;
|
||||||
|
import com.cxyxiaomo.epp.common.pojo.Gate;
|
||||||
|
import com.cxyxiaomo.epp.common.response.Res;
|
||||||
|
import com.cxyxiaomo.epp.common.vo.GateVO;
|
||||||
|
import com.github.pagehelper.PageHelper;
|
||||||
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.Calendar;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/access/gate")
|
||||||
|
public class GateController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
GateService gateService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取大门列表(门禁端)
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@GetMapping("/guard-client/getGateList")
|
||||||
|
@ResponseBody
|
||||||
|
public Res getAllGateList() {
|
||||||
|
GateVO gateVO = new GateVO();
|
||||||
|
List<Gate> gateList = gateService.getGateList(gateVO);
|
||||||
|
List<GateVO> gateVOList = GateVO.convertFrom(gateList);
|
||||||
|
return Res.success(gateVOList);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取大门列表
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@GetMapping("/manage/getGateList")
|
||||||
|
@ResponseBody
|
||||||
|
public Res getGateList(PageQuery pageQuery, GateVO gateVO) {
|
||||||
|
// 查询分页数据
|
||||||
|
PageHelper.startPage(pageQuery.getPageIndex(), pageQuery.getPageSize());
|
||||||
|
List<Gate> gateList = gateService.getGateList(gateVO);
|
||||||
|
PageInfo<Gate> gatePageInfo = new PageInfo<>(gateList);
|
||||||
|
List<Gate> list = gatePageInfo.getList();
|
||||||
|
List<GateVO> voList = GateVO.convertFrom(list);
|
||||||
|
|
||||||
|
// id列 字段名(区分大小写;以VO中的变量名为准)
|
||||||
|
// 新增、修改弹窗时,使用该列作为主键列进行操作
|
||||||
|
String idFieldName = "id";
|
||||||
|
|
||||||
|
// 当前管理页面
|
||||||
|
String pageName = "大门管理";
|
||||||
|
|
||||||
|
// 指定前端表格显示列
|
||||||
|
JSONArray columns = FieldBuilder.create()
|
||||||
|
.add("name", "name", "大门名称", "",
|
||||||
|
FieldType.TEXT, SearchType.INPUT, AddType.INPUT, EditType.INPUT,
|
||||||
|
FieldBuilder.SEARCH_PLACEHOLDER_SAME_AS_FIELDNAME,
|
||||||
|
"大门名称", FieldBuilder.EDIT_PLACEHOLDER_SAME_AS_ADD_PLACEHOLDER,
|
||||||
|
FieldRuleListBuilder.create()
|
||||||
|
.add(FieldRuleBuilder.create("大门名称").required())
|
||||||
|
.add(FieldRuleBuilder.create("大门名称").minMax(2, 15)),
|
||||||
|
"DPD @cword(2, 15)"
|
||||||
|
)
|
||||||
|
.add("open", "open", "状态", true,
|
||||||
|
FieldType.TEXT, SearchType.SELECT, AddType.SELECT, EditType.SELECT,
|
||||||
|
FieldBuilder.SEARCH_PLACEHOLDER_SAME_AS_FIELDNAME,
|
||||||
|
"状态", FieldBuilder.EDIT_PLACEHOLDER_SAME_AS_ADD_PLACEHOLDER,
|
||||||
|
FieldRuleListBuilder.create()
|
||||||
|
.add(FieldRuleBuilder.create("状态").required()),
|
||||||
|
"DPD @pick(['true', 'false'])"
|
||||||
|
)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
// 指定需要翻译的字段
|
||||||
|
HashMap<Object, Object> stateMap = new HashMap<>(2);
|
||||||
|
stateMap.put(true, "允许通行");
|
||||||
|
stateMap.put(false, "禁止通行");
|
||||||
|
// build
|
||||||
|
JSONArray fieldMapper = FieldMapperBuilder.create()
|
||||||
|
.add("open", "open", stateMap)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
// 拼装返回结果
|
||||||
|
JSONObject map = new JSONObject(6);
|
||||||
|
map.put("total", gatePageInfo.getTotal());
|
||||||
|
map.put("list", voList);
|
||||||
|
map.put("columns", columns);
|
||||||
|
map.put("fieldMapper", fieldMapper);
|
||||||
|
map.put("idFieldName", idFieldName);
|
||||||
|
map.put("pageName", pageName);
|
||||||
|
|
||||||
|
// 返回结果
|
||||||
|
return Res.success(map);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增 / 编辑大门
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@PostMapping("/manage/editGate")
|
||||||
|
@ResponseBody
|
||||||
|
public Res editGate(@ModelAttribute GateVO gateVO) throws Exception {
|
||||||
|
Gate gate = GateVO.convertTo(gateVO);
|
||||||
|
|
||||||
|
// 先查询大门是否存在
|
||||||
|
Gate existGate = gateService.getGateById(gate.getId());
|
||||||
|
|
||||||
|
if (gate.getId() == null || gate.getId() < 1) {
|
||||||
|
// 新增大门
|
||||||
|
if (existGate != null) {
|
||||||
|
return Res.error("大门已存在,操作失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (gate.getName() == null || "".equals(gate.getName())) {
|
||||||
|
return Res.error("大门名称不能为空");
|
||||||
|
}
|
||||||
|
gate.setId(null);
|
||||||
|
gateService.addGate(gate);
|
||||||
|
} else {
|
||||||
|
// 修改大门
|
||||||
|
if (existGate == null) {
|
||||||
|
return Res.error("大门不存在,操作失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
gateService.updateGate(gate);
|
||||||
|
}
|
||||||
|
return Res.success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除大门
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@PostMapping("/manage/deleteGate")
|
||||||
|
@ResponseBody
|
||||||
|
public Res deleteGate(Long id) {
|
||||||
|
if (id == null || id <= 0) {
|
||||||
|
return Res.error("大门不存在,删除失败");
|
||||||
|
}
|
||||||
|
// 先查询大门是否存在
|
||||||
|
Gate existGate = gateService.getGateById(id);
|
||||||
|
if (existGate == null) {
|
||||||
|
return Res.error("大门不存在,删除失败");
|
||||||
|
}
|
||||||
|
boolean b = gateService.deleteGate(existGate.getId());
|
||||||
|
return Res.success(b);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导出大门列表
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@GetMapping("/manage/exportGateList")
|
||||||
|
@ResponseBody
|
||||||
|
public Res exportGateList(GateVO gateVO) {
|
||||||
|
List<Gate> gateList = gateService.getGateList(gateVO);
|
||||||
|
List<GateVO> gateVOList = GateVO.convertFrom(gateList);
|
||||||
|
|
||||||
|
// 当前时间
|
||||||
|
Date now = Calendar.getInstance().getTime();
|
||||||
|
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd_HHmmss");
|
||||||
|
String dateTime = format.format(now);
|
||||||
|
|
||||||
|
HashMap<String, Object> map = new HashMap<>();
|
||||||
|
map.put("list", gateVOList);
|
||||||
|
map.put("sheetName", "社区大门表-" + System.currentTimeMillis());
|
||||||
|
map.put("fileName", "社区大门表_导出时间_" + dateTime);
|
||||||
|
|
||||||
|
return Res.success(map);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,23 @@
|
|||||||
|
package com.cxyxiaomo.epp.access.dao;
|
||||||
|
|
||||||
|
import com.cxyxiaomo.epp.common.pojo.Gate;
|
||||||
|
import com.cxyxiaomo.epp.common.vo.GateVO;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Mapper
|
||||||
|
@Repository
|
||||||
|
public interface GateDao {
|
||||||
|
|
||||||
|
public boolean addGate(Gate gate);
|
||||||
|
|
||||||
|
public boolean updateGate(Gate gate);
|
||||||
|
|
||||||
|
public List<Gate> getGateList(GateVO gateVO);
|
||||||
|
|
||||||
|
public Gate getGateById(Long gateId);
|
||||||
|
|
||||||
|
public boolean deleteGateById(Long gateId);
|
||||||
|
}
|
@ -0,0 +1,42 @@
|
|||||||
|
package com.cxyxiaomo.epp.access.service;
|
||||||
|
|
||||||
|
import com.cxyxiaomo.epp.access.dao.GateDao;
|
||||||
|
import com.cxyxiaomo.epp.common.pojo.Gate;
|
||||||
|
import com.cxyxiaomo.epp.common.utils.SnowflakeManager;
|
||||||
|
import com.cxyxiaomo.epp.common.vo.GateVO;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GateService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
GateDao gateDao;
|
||||||
|
|
||||||
|
|
||||||
|
public Gate getGateById(Long id) {
|
||||||
|
return gateDao.getGateById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Gate> getGateList(GateVO gateVO) {
|
||||||
|
return gateDao.getGateList(gateVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean addGate(Gate gate) throws Exception {
|
||||||
|
// 创建订单编号
|
||||||
|
SnowflakeManager snowflakeManager = new SnowflakeManager(1L, 1L);
|
||||||
|
long orderId = snowflakeManager.nextValue();
|
||||||
|
gate.setId(orderId);
|
||||||
|
return gateDao.addGate(gate);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean updateGate(Gate gate) {
|
||||||
|
return gateDao.updateGate(gate);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean deleteGate(Long gateId) {
|
||||||
|
return gateDao.deleteGateById(gateId);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,43 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.cxyxiaomo.epp.access.dao.GateDao">
|
||||||
|
|
||||||
|
<insert id="addGate" parameterType="com.cxyxiaomo.epp.common.pojo.Gate">
|
||||||
|
INSERT INTO gate (id, name, open)
|
||||||
|
VALUES (#{id}, #{name}, #{open})
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<update id="updateGate" parameterType="com.cxyxiaomo.epp.common.pojo.Gate">
|
||||||
|
UPDATE gate
|
||||||
|
<set>
|
||||||
|
<if test="name != null">name = #{name},</if>
|
||||||
|
<if test="open != null">open = #{open},</if>
|
||||||
|
</set>
|
||||||
|
WHERE id = #{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<select id="getGateById" resultType="com.cxyxiaomo.epp.common.pojo.Gate">
|
||||||
|
SELECT * FROM gate WHERE id = #{id}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="getGateList" resultType="com.cxyxiaomo.epp.common.pojo.Gate">
|
||||||
|
SELECT * FROM gate
|
||||||
|
<where>
|
||||||
|
<if test="id != null">
|
||||||
|
AND id = #{id}
|
||||||
|
</if>
|
||||||
|
<if test="name != null and name != ''">
|
||||||
|
AND name = #{name}
|
||||||
|
</if>
|
||||||
|
<if test="open != null">
|
||||||
|
AND open = #{open}
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<delete id="deleteGateById">
|
||||||
|
DELETE FROM gate WHERE id = #{id}
|
||||||
|
</delete>
|
||||||
|
</mapper>
|
@ -17,6 +17,23 @@
|
|||||||
SET NAMES utf8mb4;
|
SET NAMES utf8mb4;
|
||||||
SET FOREIGN_KEY_CHECKS = 0;
|
SET FOREIGN_KEY_CHECKS = 0;
|
||||||
|
|
||||||
|
-- ----------------------------
|
||||||
|
-- Table structure for access_log
|
||||||
|
-- ----------------------------
|
||||||
|
DROP TABLE IF EXISTS `access_log`;
|
||||||
|
CREATE TABLE `access_log` (
|
||||||
|
`id` bigint(20) NOT NULL COMMENT '雪花id',
|
||||||
|
`time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '进出时间',
|
||||||
|
`user_id` int(11) NOT NULL COMMENT '用户id',
|
||||||
|
`user_real_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '用户真实姓名',
|
||||||
|
`gate_id` bigint(20) NOT NULL COMMENT '大门id',
|
||||||
|
`type` enum('IN','OUT') CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '类型(进门 OR 出门)'
|
||||||
|
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '人员进出记录表' ROW_FORMAT = Dynamic;
|
||||||
|
|
||||||
|
-- ----------------------------
|
||||||
|
-- Records of access_log
|
||||||
|
-- ----------------------------
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Table structure for apply1
|
-- Table structure for apply1
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
@ -48,21 +65,6 @@ INSERT INTO `apply1` VALUES (10, 12, '1', '飞机', '1', '2022-06-15 10:53:00',
|
|||||||
INSERT INTO `apply1` VALUES (11, 2, '1', '飞机', '1', '2022-10-23 16:17:00', '2022-10-23 18:17:00', 1, '');
|
INSERT INTO `apply1` VALUES (11, 2, '1', '飞机', '1', '2022-10-23 16:17:00', '2022-10-23 18:17:00', 1, '');
|
||||||
INSERT INTO `apply1` VALUES (12, 13, '1', '飞机', '1', '2022-10-26 19:25:00', '2022-10-26 21:25:00', 1, '');
|
INSERT INTO `apply1` VALUES (12, 13, '1', '飞机', '1', '2022-10-26 19:25:00', '2022-10-26 21:25:00', 1, '');
|
||||||
|
|
||||||
-- ----------------------------
|
|
||||||
-- Table structure for community_gate1
|
|
||||||
-- ----------------------------
|
|
||||||
DROP TABLE IF EXISTS `community_gate1`;
|
|
||||||
CREATE TABLE `community_gate1` (
|
|
||||||
`id` bigint(11) NOT NULL AUTO_INCREMENT COMMENT '雪花id',
|
|
||||||
`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '大门显示名称',
|
|
||||||
`open` tinyint(1) NOT NULL DEFAULT 1 COMMENT '大门是否开放 1为开放 2为关闭',
|
|
||||||
PRIMARY KEY (`id`) USING BTREE
|
|
||||||
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '社区大门' ROW_FORMAT = DYNAMIC;
|
|
||||||
|
|
||||||
-- ----------------------------
|
|
||||||
-- Records of community_gate1
|
|
||||||
-- ----------------------------
|
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Table structure for count1
|
-- Table structure for count1
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
@ -102,6 +104,21 @@ INSERT INTO `feedback1` VALUES (3, '22', '33', '2022-02-14 10:20:29', 1, 'no');
|
|||||||
INSERT INTO `feedback1` VALUES (4, '``', '11', '2022-02-14 10:22:12', 1, '111');
|
INSERT INTO `feedback1` VALUES (4, '``', '11', '2022-02-14 10:22:12', 1, '111');
|
||||||
INSERT INTO `feedback1` VALUES (5, '123', '123456', '2022-03-28 19:34:04', 2, NULL);
|
INSERT INTO `feedback1` VALUES (5, '123', '123456', '2022-03-28 19:34:04', 2, NULL);
|
||||||
|
|
||||||
|
-- ----------------------------
|
||||||
|
-- Table structure for gate
|
||||||
|
-- ----------------------------
|
||||||
|
DROP TABLE IF EXISTS `gate`;
|
||||||
|
CREATE TABLE `gate` (
|
||||||
|
`id` bigint(11) NOT NULL AUTO_INCREMENT COMMENT '雪花id',
|
||||||
|
`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '大门显示名称',
|
||||||
|
`open` tinyint(1) NOT NULL DEFAULT 1 COMMENT '大门是否开放 1为开放 2为关闭',
|
||||||
|
PRIMARY KEY (`id`) USING BTREE
|
||||||
|
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '社区大门' ROW_FORMAT = DYNAMIC;
|
||||||
|
|
||||||
|
-- ----------------------------
|
||||||
|
-- Records of gate
|
||||||
|
-- ----------------------------
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Table structure for goods
|
-- Table structure for goods
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
|
23
docs/ChatGPT/生成Mybatis xml SQL语句2.md
Normal file
23
docs/ChatGPT/生成Mybatis xml SQL语句2.md
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
CREATE TABLE `gate` (
|
||||||
|
`id` bigint(11) NOT NULL AUTO_INCREMENT COMMENT '雪花id',
|
||||||
|
`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '大门显示名称',
|
||||||
|
`open` tinyint(1) NOT NULL DEFAULT 1 COMMENT '大门是否开放 1为开放 2为关闭',
|
||||||
|
PRIMARY KEY (`id`) USING BTREE
|
||||||
|
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '社区大门' ROW_FORMAT = DYNAMIC;
|
||||||
|
|
||||||
|
创建该表的 add update getList deleteById 的 Mybatils xml片段
|
||||||
|
(例如:<insert id="addGate">,<update id="updateGate">,<select id="getGateList">,<delete id="deleteGateById">)
|
||||||
|
|
||||||
|
实体类如下
|
||||||
|
|
||||||
|
public class Gate implements Serializable {
|
||||||
|
private Long id;
|
||||||
|
private String name;
|
||||||
|
private Boolean open;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
以下是一些要求
|
||||||
|
parameterType="com.cxyxiaomo.epp.common.pojo.Gate"
|
||||||
|
where 条件所引用的Java变量都需要先判断是否为null或空
|
||||||
|
输出应该为一个 ```code``` 包起来的代码片段
|
51
frontend/src/api/gate.js
Normal file
51
frontend/src/api/gate.js
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
import send_request from '../utils/send_request';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取大门列表
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
export function getGateList(params) {
|
||||||
|
return send_request({
|
||||||
|
url: '/access/gate/manage/getGateList',
|
||||||
|
method: 'GET',
|
||||||
|
params: params,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 添加/修改大门信息
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
export function editGate(params) {
|
||||||
|
return send_request({
|
||||||
|
url: '/access/gate/manage/editGate',
|
||||||
|
method: 'POST',
|
||||||
|
useQS: true,
|
||||||
|
params: params,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除大门
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
export function deleteGate(params) {
|
||||||
|
return send_request({
|
||||||
|
url: '/access/gate/manage/deleteGate',
|
||||||
|
method: 'POST',
|
||||||
|
useQS: true,
|
||||||
|
params: params,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导出大门列表
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
export function exportGateList(params) {
|
||||||
|
return send_request({
|
||||||
|
url: '/access/gate/manage/exportGateList',
|
||||||
|
method: 'GET',
|
||||||
|
params: params,
|
||||||
|
});
|
||||||
|
};
|
@ -32,7 +32,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 表格 -->
|
<!-- 表格 -->
|
||||||
<el-table :data="tableData" border class="table" ref="multipleTable" header-cell-class-name="table-header">
|
<el-table :data="tableData" border class="table" ref="multipleTable" header-cell-class-name="table-header">
|
||||||
<el-table-column prop="id" label="ID" width="55" align="center"></el-table-column>
|
<el-table-column prop="id" label="ID" align="center"></el-table-column>
|
||||||
<el-table-column v-for="(field, index) in tableFields" :prop="field.prop" :label="field.label" :key="index"
|
<el-table-column v-for="(field, index) in tableFields" :prop="field.prop" :label="field.label" :key="index"
|
||||||
align="center">
|
align="center">
|
||||||
<template #default="scope" v-if="field.type == 'image'">
|
<template #default="scope" v-if="field.type == 'image'">
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<manageList :list-func="shopGoodApi.getGoodList" :add-func="shopGoodApi.editGood" :edit-func="shopGoodApi.editGood"
|
<manageList :list-func="gateApi.getGateList" :add-func="gateApi.editGate" :edit-func="gateApi.editGate"
|
||||||
:delete-func="shopGoodApi.deleteGood" :export-func="shopGoodApi.exportGoodList" edit-permiss="shop-good-setting" />
|
:delete-func="gateApi.deleteGate" :export-func="gateApi.exportGateList" edit-permiss="access-gate-setting" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import manageList from '../components/manage-list.vue';
|
import manageList from '../components/manage-list.vue';
|
||||||
import * as shopGoodApi from '../api/shop-good';
|
import * as gateApi from '../api/gate';
|
||||||
</script>
|
</script>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<manageList :list-func="reportApi.getReportList" :export-func="reportApi.exportReportList"
|
<manageList :list-func="reportApi.getReportList" :export-func="reportApi.exportReportList"
|
||||||
edit-permiss="privilege-user-setting" />
|
edit-permiss="access-log" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user