From 760e59d99bb2305fda50cadb3791e295ca019838 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 14 Jul 2021 16:25:16 +0800
Subject: [PATCH] 通知,装备,车辆,枪支接口同步

---
 src/main/java/org/springblade/modules/equipage/service/impl/EquipageServiceImpl.java             |   33 +
 src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.java            |   33 +
 src/main/java/org/springblade/modules/equipage/service/impl/GunServiceImpl.java                  |   37 +
 src/main/java/org/springblade/modules/desk/mapper/NoticeMapper.xml                               |   11 
 src/main/java/org/springblade/modules/equipage/mapper/GunMapper.xml                              |   53 ++
 src/main/java/org/springblade/modules/equipage/service/impl/CarServiceImpl.java                  |   37 +
 src/main/java/org/springblade/modules/training/vo/TrainingRegistrationVo.java                    |   18 
 src/main/java/org/springblade/modules/equipage/vo/CarVo.java                                     |   19 
 src/main/java/org/springblade/modules/equipage/mapper/GunMapper.java                             |   32 +
 src/main/java/org/springblade/modules/desk/vo/NoticeVO.java                                      |   10 
 src/main/java/org/springblade/modules/equipage/entity/Car.java                                   |   83 +++
 src/main/java/org/springblade/modules/equipage/entity/Gun.java                                   |   82 +++
 src/main/java/org/springblade/modules/equipage/service/EquipageService.java                      |   13 
 src/main/java/org/springblade/modules/equipage/mapper/EquipageMapper.xml                         |   50 ++
 src/main/java/org/springblade/modules/desk/entity/Notice.java                                    |    6 
 src/main/java/org/springblade/modules/training/service/TrainingRegistrationService.java          |   27 +
 src/main/java/org/springblade/modules/equipage/controller/GunController.java                     |   87 +++
 src/main/java/org/springblade/modules/equipage/service/GunService.java                           |   23 +
 src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java    |   87 +++
 src/main/java/org/springblade/modules/equipage/entity/Equipage.java                              |   77 +++
 src/main/java/org/springblade/modules/equipage/mapper/EquipageMapper.java                        |   32 +
 src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.xml             |   44 +
 src/main/java/org/springblade/modules/equipage/service/CarService.java                           |   25 +
 src/main/java/org/springblade/modules/equipage/vo/EquipageVo.java                                |   15 
 src/main/java/org/springblade/modules/equipage/mapper/CarMapper.java                             |   32 +
 src/main/java/org/springblade/modules/training/service/impl/TrainingRegistrationServiceImpl.java |   32 +
 src/main/java/org/springblade/modules/equipage/controller/CarController.java                     |   87 +++
 src/main/java/org/springblade/modules/equipage/vo/GunVo.java                                     |   15 
 src/main/java/org/springblade/modules/equipage/controller/EquipageController.java                |   87 +++
 src/main/java/org/springblade/modules/equipage/mapper/CarMapper.xml                              |   53 ++
 src/main/java/org/springblade/modules/training/entity/TrainingRegistration.java                  |   99 ++++
 src/main/java/org/springblade/modules/desk/controller/NoticeController.java                      |   11 
 32 files changed, 1,349 insertions(+), 1 deletions(-)

diff --git a/src/main/java/org/springblade/modules/desk/controller/NoticeController.java b/src/main/java/org/springblade/modules/desk/controller/NoticeController.java
index e49dd9b..d513ec1 100644
--- a/src/main/java/org/springblade/modules/desk/controller/NoticeController.java
+++ b/src/main/java/org/springblade/modules/desk/controller/NoticeController.java
@@ -32,6 +32,8 @@
 import org.springblade.modules.desk.service.INoticeService;
 import org.springblade.modules.desk.vo.NoticeVO;
 import org.springblade.modules.desk.wrapper.NoticeWrapper;
+import org.springblade.modules.system.entity.Dept;
+import org.springblade.modules.system.service.IDeptService;
 import org.springframework.web.bind.annotation.*;
 import springfox.documentation.annotations.ApiIgnore;
 
@@ -51,6 +53,8 @@
 public class NoticeController extends BladeController {
 
 	private final INoticeService noticeService;
+
+	private final IDeptService iDeptService;
 
 	/**
 	 * 详情
@@ -89,6 +93,13 @@
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "分页", notes = "传入notice")
 	public R<IPage<NoticeVO>> page(@ApiIgnore NoticeVO notice, Query query) {
+		//通过deptId获取组织机构信息
+		Dept dept = iDeptService.getById(notice.getDeptId());
+//		if (dept.getDeptCategory() == 1) {
+//			notice.setCategory(1);
+//		} else {
+//			notice.setCategory(2);
+//		}
 		IPage<NoticeVO> pages = noticeService.selectNoticePage(Condition.getPage(query), notice);
 		return R.data(pages);
 	}
diff --git a/src/main/java/org/springblade/modules/desk/entity/Notice.java b/src/main/java/org/springblade/modules/desk/entity/Notice.java
index 2cfc00f..8e86044 100644
--- a/src/main/java/org/springblade/modules/desk/entity/Notice.java
+++ b/src/main/java/org/springblade/modules/desk/entity/Notice.java
@@ -16,6 +16,7 @@
  */
 package org.springblade.modules.desk.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -60,5 +61,10 @@
 	@ApiModelProperty(value = "内容")
 	private String content;
 
+	/**
+	 * 单位id
+	 */
+	@TableField("dept_id")
+	private Long deptId;
 
 }
diff --git a/src/main/java/org/springblade/modules/desk/mapper/NoticeMapper.xml b/src/main/java/org/springblade/modules/desk/mapper/NoticeMapper.xml
index 6694ee4..8070788 100644
--- a/src/main/java/org/springblade/modules/desk/mapper/NoticeMapper.xml
+++ b/src/main/java/org/springblade/modules/desk/mapper/NoticeMapper.xml
@@ -40,7 +40,7 @@
         d.dict_value AS categoryName
         FROM
         blade_notice n
-        LEFT JOIN ( SELECT * FROM blade_dict WHERE CODE = 'notice' ) d ON n.category = d.dict_key
+        LEFT JOIN ( SELECT * FROM blade_dict WHERE code = 'notice' ) d ON n.category = d.dict_key
         WHERE
         n.is_deleted = 0 and n.tenant_id = #{notice.tenantId}
         <if test="notice.title!=null">
@@ -49,5 +49,14 @@
         <if test="notice.category!=null">
             and n.category = #{notice.category}
         </if>
+        <if test="notice.deptId!=null">
+            and (n.dept_id = #{notice.deptId} or n.category = 2)
+        </if>
+        <if test="notice.startTime!=null and notice.startTime!=''">
+            and n.release_time &gt;= #{notice.startTime}
+        </if>
+        <if test="notice.endTime!=null and notice.endTime!=''">
+            and n.release_time &lt;= #{notice.endTime}
+        </if>
     </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/desk/vo/NoticeVO.java b/src/main/java/org/springblade/modules/desk/vo/NoticeVO.java
index 3dd6235..4faee8c 100644
--- a/src/main/java/org/springblade/modules/desk/vo/NoticeVO.java
+++ b/src/main/java/org/springblade/modules/desk/vo/NoticeVO.java
@@ -20,4 +20,14 @@
 	@ApiModelProperty(value = "租户编号")
 	private String tenantId;
 
+	/**
+	 * 通知开始时间
+	 */
+	private String startTime;
+
+	/**
+	 * 通知结束时间
+	 */
+	private String endTime;
+
 }
diff --git a/src/main/java/org/springblade/modules/equipage/controller/CarController.java b/src/main/java/org/springblade/modules/equipage/controller/CarController.java
new file mode 100644
index 0000000..81ef58a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/controller/CarController.java
@@ -0,0 +1,87 @@
+package org.springblade.modules.equipage.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.equipage.entity.Car;
+import org.springblade.modules.equipage.service.CarService;
+import org.springblade.modules.equipage.vo.CarVo;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author zhongrj
+ * @time 2021-07-06
+ * @desc 车辆控制层
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/car")
+public class CarController {
+
+	private final CarService carService;
+
+	/**
+	 * 自定义分页
+	 * @param query page,size
+	 * @param car 车辆信息对象
+	 */
+	@GetMapping("/page")
+	public R<IPage<CarVo>> page(CarVo car, Query query) {
+		IPage<CarVo> pages = carService.selectCarPage(Condition.getPage(query), car);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增
+	 * @param car 车辆信息对象
+	 */
+	@PostMapping("/save")
+	@ApiOperation(value = "新增", notes = "传入car")
+	public R save(@RequestBody Car car) {
+		return R.status(carService.save(car));
+	}
+
+	/**
+	 * 修改
+	 * @param car 车辆信息对象
+	 */
+	@PostMapping("/update")
+	public R update(@RequestBody Car car) {
+		return R.status(carService.updateById(car));
+	}
+
+	/**
+	 * 新增或修改
+	 * @param car 车辆信息对象
+	 */
+	@PostMapping("/submit")
+	public R submit(@RequestBody Car car) {
+		return R.status(carService.saveOrUpdate(car));
+	}
+
+	/**
+	 * 删除
+	 * @param ids 车辆信息ids 数组
+	 */
+	@PostMapping("/remove")
+	public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) {
+		return R.status(carService.removeByIds(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 详情
+	 * @param car 车辆信息对象
+	 */
+	@GetMapping("/detail")
+	@ApiOperation(value = "详情", notes = "传入car")
+	public R<CarVo> detail(Car car) {
+		CarVo detail = carService.selectCarInfo(car);
+		return R.data(detail);
+	}
+
+}
diff --git a/src/main/java/org/springblade/modules/equipage/controller/EquipageController.java b/src/main/java/org/springblade/modules/equipage/controller/EquipageController.java
new file mode 100644
index 0000000..a346f6d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/controller/EquipageController.java
@@ -0,0 +1,87 @@
+package org.springblade.modules.equipage.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.equipage.entity.Equipage;
+import org.springblade.modules.equipage.service.EquipageService;
+import org.springblade.modules.equipage.vo.EquipageVo;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author zhongrj
+ * @time 2021-07-06
+ * @desc 装备管理控制层
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/equipage")
+public class EquipageController {
+
+	private final EquipageService equipageService;
+
+	/**
+	 * 自定义分页
+	 * @param query page,size
+	 * @param equipage 装备信息对象
+	 */
+	@GetMapping("/page")
+	public R<IPage<EquipageVo>> page(EquipageVo equipage, Query query) {
+		IPage<EquipageVo> pages = equipageService.selectEquipagePage(Condition.getPage(query), equipage);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增
+	 * @param equipage 装备信息对象
+	 */
+	@PostMapping("/save")
+	@ApiOperation(value = "新增", notes = "传入equipage")
+	public R save(@RequestBody Equipage equipage) {
+		return R.status(equipageService.save(equipage));
+	}
+
+	/**
+	 * 修改
+	 * @param equipage 装备信息对象
+	 */
+	@PostMapping("/update")
+	public R update(@RequestBody Equipage equipage) {
+		return R.status(equipageService.updateById(equipage));
+	}
+
+	/**
+	 * 新增或修改
+	 * @param equipage 装备信息对象
+	 */
+	@PostMapping("/submit")
+	public R submit(@RequestBody Equipage equipage) {
+		return R.status(equipageService.saveOrUpdate(equipage));
+	}
+
+	/**
+	 * 删除
+	 * @param ids 装备信息ids 数组
+	 */
+	@PostMapping("/remove")
+	public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) {
+		return R.status(equipageService.removeByIds(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 详情
+	 * @param equipage 装备信息对象
+	 */
+	@GetMapping("/detail")
+	@ApiOperation(value = "详情", notes = "传入equipage")
+	public R<EquipageVo> detail(Equipage equipage) {
+		EquipageVo detail = equipageService.selectEquipageInfo(equipage);
+		return R.data(detail);
+	}
+
+}
diff --git a/src/main/java/org/springblade/modules/equipage/controller/GunController.java b/src/main/java/org/springblade/modules/equipage/controller/GunController.java
new file mode 100644
index 0000000..6ee647d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/controller/GunController.java
@@ -0,0 +1,87 @@
+package org.springblade.modules.equipage.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.equipage.entity.Gun;
+import org.springblade.modules.equipage.service.GunService;
+import org.springblade.modules.equipage.vo.GunVo;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author zhongrj
+ * @time 2021-07-06
+ * @desc 枪支控制层
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/gun")
+public class GunController {
+
+	private final GunService gunService;
+
+	/**
+	 * 自定义分页
+	 * @param query page,size
+	 * @param gun 枪支信息对象
+	 */
+	@GetMapping("/page")
+	public R<IPage<GunVo>> page(GunVo gun, Query query) {
+		IPage<GunVo> pages = gunService.selectGunPage(Condition.getPage(query), gun);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增
+	 * @param gun 枪支信息对象
+	 */
+	@PostMapping("/save")
+	@ApiOperation(value = "新增", notes = "传入gun")
+	public R save(@RequestBody Gun gun) {
+		return R.status(gunService.save(gun));
+	}
+
+	/**
+	 * 修改
+	 * @param gun 枪支信息对象
+	 */
+	@PostMapping("/update")
+	public R update(@RequestBody Gun gun) {
+		return R.status(gunService.updateById(gun));
+	}
+
+	/**
+	 * 新增或修改
+	 * @param gun 枪支信息对象
+	 */
+	@PostMapping("/submit")
+	public R submit(@RequestBody Gun gun) {
+		return R.status(gunService.saveOrUpdate(gun));
+	}
+
+	/**
+	 * 删除
+	 * @param ids 枪支信息ids 数组
+	 */
+	@PostMapping("/remove")
+	public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) {
+		return R.status(gunService.removeByIds(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 详情
+	 * @param gun 枪支信息对象
+	 */
+	@GetMapping("/detail")
+	@ApiOperation(value = "详情", notes = "传入gun")
+	public R<GunVo> detail(Gun gun) {
+		GunVo detail = gunService.selectGunInfo(gun);
+		return R.data(detail);
+	}
+
+}
diff --git a/src/main/java/org/springblade/modules/equipage/entity/Car.java b/src/main/java/org/springblade/modules/equipage/entity/Car.java
new file mode 100644
index 0000000..2be0044
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/entity/Car.java
@@ -0,0 +1,83 @@
+package org.springblade.modules.equipage.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;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 实体类
+ * @author zhongrj
+ * @time 2021-07-06
+ */
+@Data
+@TableName("sys_car")
+public class Car implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 招聘主键id
+	 */
+	@TableId(value = "id",type = IdType.AUTO)
+	private Long id;
+
+	/**
+	 * 部门id
+	 */
+	@TableField("dept_id")
+	private Long deptId;
+
+	/**
+	 * 车牌号码
+	 */
+	@TableField("car_number")
+	private String carNumber;
+
+	/**
+	 * 号码种类
+	 */
+	@TableField("number_type")
+	private Integer numberType;
+
+	/**
+	 * 车辆类型
+	 */
+	@TableField("car_type")
+	private Integer carType;
+
+	/**
+	 * 责任人
+	 */
+	@TableField("person_in_charge")
+	private String personInCharge;
+
+	/**
+	 * 厂商,品牌
+	 */
+	private String brand;
+
+	/**
+	 * 出厂日期
+	 */
+	@TableField("date_for_production")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date dateForProduction;
+
+	/**
+	 * 环保标志 ,国IV
+	 */
+	private String umweltsatz;
+
+	/**
+	 * 车辆型号
+	 */
+	private String mode;
+
+}
diff --git a/src/main/java/org/springblade/modules/equipage/entity/Equipage.java b/src/main/java/org/springblade/modules/equipage/entity/Equipage.java
new file mode 100644
index 0000000..4cecff8
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/entity/Equipage.java
@@ -0,0 +1,77 @@
+package org.springblade.modules.equipage.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;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 实体类
+ * @author zhongrj
+ * @time 2021-07-06
+ */
+@Data
+@TableName("sys_equipage")
+public class Equipage implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 招聘主键id
+	 */
+	@TableId(value = "id",type = IdType.AUTO)
+	private Long id;
+
+	/**
+	 * 部门id
+	 */
+	@TableField("dept_id")
+	private Long deptId;
+
+	/**
+	 * 名称
+	 */
+	private String name;
+
+	/**
+	 * 编号
+	 */
+	private String number;
+
+	/**
+	 * 规格
+	 */
+	private String specifications;
+
+	/**
+	 * 型号
+	 */
+	private String mode;
+
+	/**
+	 * 责任人
+	 */
+	@TableField("person_in_charge")
+	private String personInCharge;
+
+	/**
+	 * 品牌,厂商
+	 */
+	private String brand;
+
+	/**
+	 * 生产时间
+	 */
+	@TableField("date_for_production")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date dateForProduction;
+
+
+
+}
diff --git a/src/main/java/org/springblade/modules/equipage/entity/Gun.java b/src/main/java/org/springblade/modules/equipage/entity/Gun.java
new file mode 100644
index 0000000..8651b66
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/entity/Gun.java
@@ -0,0 +1,82 @@
+package org.springblade.modules.equipage.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;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 实体类
+ * @author zhongrj
+ * @time 2021-07-06
+ */
+@Data
+@TableName("sys_gun")
+public class Gun implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 招聘主键id
+	 */
+	@TableId(value = "id",type = IdType.AUTO)
+	private Long id;
+
+	/**
+	 * 部门id
+	 */
+	@TableField("dept_id")
+	private Long deptId;
+
+	/**
+	 * 公务用枪证编号
+	 */
+	@TableField("gun_card_number")
+	private String gunCardNumber;
+
+	/**
+	 * 发证单位名称
+	 */
+	@TableField("issue_unit")
+	private String issueUnit;
+
+	/**
+	 * 公务用枪编号
+	 */
+	@TableField("card_number")
+	private String cardNumber;
+
+	/**
+	 * 责任人
+	 */
+	@TableField("person_in_charge")
+	private String personInCharge;
+
+	/**
+	 * 枪型
+	 */
+	@TableField("gun_mode")
+	private String gunMode;
+
+	/**
+	 * 发证日期
+	 */
+	@TableField("issue_time")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date issueTime;
+
+	/**
+	 * 有效日期
+	 */
+	@TableField("valid_time")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date validTime;
+
+}
diff --git a/src/main/java/org/springblade/modules/equipage/mapper/CarMapper.java b/src/main/java/org/springblade/modules/equipage/mapper/CarMapper.java
new file mode 100644
index 0000000..c529bf4
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/mapper/CarMapper.java
@@ -0,0 +1,32 @@
+package org.springblade.modules.equipage.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.equipage.entity.Car;
+import org.springblade.modules.equipage.vo.CarVo;
+
+import java.util.List;
+
+/**
+ * 车辆Mapper 接口
+ * @author zhongrj
+ */
+public interface CarMapper extends BaseMapper<Car> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page   分页
+	 * @param car 实体
+	 * @return
+	 */
+	List<CarVo> selectCarPage(IPage page, @Param("car") CarVo car);
+
+	/**
+	 * 详情
+	 * @param car 车辆信息对象
+	 * @return
+	 */
+	CarVo selectCarInfo(@Param("car") Car car);
+}
diff --git a/src/main/java/org/springblade/modules/equipage/mapper/CarMapper.xml b/src/main/java/org/springblade/modules/equipage/mapper/CarMapper.xml
new file mode 100644
index 0000000..7b70ea2
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/mapper/CarMapper.xml
@@ -0,0 +1,53 @@
+<?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="org.springblade.modules.equipage.mapper.CarMapper">
+
+    <!--车辆分页信息-->
+    <select id="selectCarPage" resultType="org.springblade.modules.equipage.vo.CarVo">
+        SELECT
+            sc.*,bt.dept_name AS tenantName
+        FROM
+            sys_car sc
+        LEFT JOIN
+            blade_dept bt
+        ON
+            sc.dept_id = bt.id
+        WHERE
+            1=1
+        <if test="car.tenantName!=null and  car.tenantName!=''">
+            and bt.dept_name like concat('%', #{car.tenantName},'%')
+        </if>
+        <if test="car.carNumber!=null and car.carNumber!=''">
+            and sc.car_number like concat('%', #{car.carNumber},'%')
+        </if>
+        <if test="car.deptId!=null and car.deptId!=''">
+            and sc.dept_id = #{car.deptId}
+        </if>
+        <if test="car.numberType!=null and car.numberType!=''">
+            and sc.number_type like concat('%', #{car.numberType},'%')
+        </if>
+        <if test="car.carType!=null and car.carType!=''">
+            and sc.car_type like concat('%', #{car.carType},'%')
+        </if>
+        <if test="car.personInCharge!=null and car.personInCharge!=''">
+            and sc.person_in_charge like concat('%', #{car.personInCharge},'%')
+        </if>
+    </select>
+
+    <!--车辆详情信息-->
+    <select id="selectCarInfo" resultType="org.springblade.modules.equipage.vo.CarVo">
+        SELECT
+            sc.*,bt.dept_name AS tenantName
+        FROM
+            sys_car sc
+        LEFT JOIN
+            blade_dept bt
+        ON
+            sc.dept_id = bt.id
+        WHERE
+            1=1
+        <if test="car.id!=null">
+            and sc.id = #{car.id}
+        </if>
+    </select>
+</mapper>
diff --git a/src/main/java/org/springblade/modules/equipage/mapper/EquipageMapper.java b/src/main/java/org/springblade/modules/equipage/mapper/EquipageMapper.java
new file mode 100644
index 0000000..67f42cc
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/mapper/EquipageMapper.java
@@ -0,0 +1,32 @@
+package org.springblade.modules.equipage.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.equipage.entity.Equipage;
+import org.springblade.modules.equipage.vo.EquipageVo;
+
+import java.util.List;
+
+/**
+ * 装备Mapper 接口
+ * @author zhongrj
+ */
+public interface EquipageMapper extends BaseMapper<Equipage> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page   分页
+	 * @param equipage 实体
+	 * @return
+	 */
+	List<EquipageVo> selectEquipagePage(IPage page, @Param("equipage") EquipageVo equipage);
+
+	/**
+	 * 详情
+	 * @param equipage 装备信息对象
+	 * @return
+	 */
+	EquipageVo selectEquipageInfo(@Param("equipage") Equipage equipage);
+}
diff --git a/src/main/java/org/springblade/modules/equipage/mapper/EquipageMapper.xml b/src/main/java/org/springblade/modules/equipage/mapper/EquipageMapper.xml
new file mode 100644
index 0000000..26b7381
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/mapper/EquipageMapper.xml
@@ -0,0 +1,50 @@
+<?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="org.springblade.modules.equipage.mapper.EquipageMapper">
+
+    <!--车辆分页信息-->
+    <select id="selectEquipagePage" resultType="org.springblade.modules.equipage.vo.EquipageVo">
+        SELECT
+            se.*,bt.dept_name AS tenantName
+        FROM
+            sys_equipage se
+        LEFT JOIN
+            blade_dept bt
+        ON
+            se.dept_id = bt.id
+        WHERE
+            1=1
+        <if test="equipage.tenantName!=null and  equipage.tenantName!=''">
+            and bt.dept_name like concat('%', #{equipage.tenantName},'%')
+        </if>
+        <if test="equipage.deptId!=null and equipage.deptId!=''">
+            and se.dept_id = #{equipage.deptId}
+        </if>
+        <if test="equipage.number!=null and equipage.number!=''">
+            and se.number like concat('%', #{equipage.number},'%')
+        </if>
+        <if test="equipage.name!=null and equipage.name!=''">
+            and se.name like concat('%', #{equipage.name},'%')
+        </if>
+        <if test="equipage.personInCharge!=null and equipage.personInCharge!=''">
+            and se.person_in_charge like concat('%', #{equipage.personInCharge},'%')
+        </if>
+    </select>
+
+    <!--车辆详情信息-->
+    <select id="selectEquipageInfo" resultType="org.springblade.modules.equipage.vo.EquipageVo">
+        SELECT
+            se.*,bt.dept_name AS tenantName
+        FROM
+            sys_equipage se
+        LEFT JOIN
+            blade_dept bt
+        ON
+            se.dept_id = bt.id
+        WHERE
+            1=1
+        <if test="equipage.id!=null">
+            and se.id = #{equipage.id}
+        </if>
+    </select>
+</mapper>
diff --git a/src/main/java/org/springblade/modules/equipage/mapper/GunMapper.java b/src/main/java/org/springblade/modules/equipage/mapper/GunMapper.java
new file mode 100644
index 0000000..564880d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/mapper/GunMapper.java
@@ -0,0 +1,32 @@
+package org.springblade.modules.equipage.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.equipage.entity.Gun;
+import org.springblade.modules.equipage.vo.GunVo;
+
+import java.util.List;
+
+/**
+ * 枪支Mapper 接口
+ * @author zhongrj
+ */
+public interface GunMapper extends BaseMapper<Gun> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page   分页
+	 * @param gun 实体
+	 * @return
+	 */
+	List<GunVo> selectGunPage(IPage page, @Param("gun") GunVo gun);
+
+	/**
+	 * 详情
+	 * @param gun 枪支信息对象
+	 * @return
+	 */
+	GunVo selectGunInfo(@Param("gun") Gun gun);
+}
diff --git a/src/main/java/org/springblade/modules/equipage/mapper/GunMapper.xml b/src/main/java/org/springblade/modules/equipage/mapper/GunMapper.xml
new file mode 100644
index 0000000..b7d87ce
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/mapper/GunMapper.xml
@@ -0,0 +1,53 @@
+<?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="org.springblade.modules.equipage.mapper.GunMapper">
+
+    <!--枪支分页信息-->
+    <select id="selectGunPage" resultType="org.springblade.modules.equipage.vo.GunVo">
+        SELECT
+            sg.*,bt.dept_name AS tenantName
+        FROM
+            sys_gun sg
+        LEFT JOIN
+            blade_dept bt
+        ON
+            sg.dept_id = bt.id
+        WHERE
+            1=1
+        <if test="gun.tenantName!=null and  gun.tenantName!=''">
+            and bt.dept_name like concat('%', #{gun.tenantName},'%')
+        </if>
+        <if test="gun.deptId!=null and gun.deptId!=''">
+            and sg.dept_id = #{gun.deptId}
+        </if>
+        <if test="gun.gunCardNumber!=null and gun.gunCardNumber!=''">
+            and sg.gun_card_number like concat('%', #{gun.gunCardNumber},'%')
+        </if>
+        <if test="gun.cardNumber!=null and gun.cardNumber!=''">
+            and sg.card_number like concat('%', #{gun.cardNumber},'%')
+        </if>
+        <if test="gun.issueUnit!=null and gun.issueUnit!=''">
+            and sg.issue_unit like concat('%', #{gun.issueUnit},'%')
+        </if>
+        <if test="gun.personInCharge!=null and gun.personInCharge!=''">
+            and sg.person_in_charge like concat('%', #{gun.personInCharge},'%')
+        </if>
+    </select>
+
+    <!--枪支详情信息-->
+    <select id="selectGunInfo" resultType="org.springblade.modules.equipage.vo.GunVo">
+        SELECT
+            sg.*,bt.dept_name AS tenantName
+        FROM
+            sys_gun sg
+        LEFT JOIN
+            blade_dept bt
+        ON
+            sg.dept_id = bt.id
+        WHERE
+            1=1
+        <if test="gun.id!=null">
+            and sg.id = #{gun.id}
+        </if>
+    </select>
+</mapper>
diff --git a/src/main/java/org/springblade/modules/equipage/service/CarService.java b/src/main/java/org/springblade/modules/equipage/service/CarService.java
new file mode 100644
index 0000000..3a8bc34
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/service/CarService.java
@@ -0,0 +1,25 @@
+package org.springblade.modules.equipage.service;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.equipage.entity.Car;
+import org.springblade.modules.equipage.vo.CarVo;
+
+public interface CarService extends IService<Car> {
+
+	/**
+	 * 车辆详情
+	 * @param car 车辆信息对象
+	 * @return
+	 */
+	CarVo selectCarInfo(Car car);
+
+	/**
+	 * 车辆分页信息
+	 * @param page
+	 * @param car 车辆信息对象
+	 * @return
+	 */
+	IPage<CarVo> selectCarPage(IPage<CarVo> page, CarVo car);
+}
diff --git a/src/main/java/org/springblade/modules/equipage/service/EquipageService.java b/src/main/java/org/springblade/modules/equipage/service/EquipageService.java
new file mode 100644
index 0000000..d4c4a83
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/service/EquipageService.java
@@ -0,0 +1,13 @@
+package org.springblade.modules.equipage.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.equipage.entity.Equipage;
+import org.springblade.modules.equipage.vo.EquipageVo;
+
+public interface EquipageService extends IService<Equipage> {
+
+	EquipageVo selectEquipageInfo(Equipage equipage);
+
+	IPage<EquipageVo> selectEquipagePage(IPage<EquipageVo> page, EquipageVo equipage);
+}
diff --git a/src/main/java/org/springblade/modules/equipage/service/GunService.java b/src/main/java/org/springblade/modules/equipage/service/GunService.java
new file mode 100644
index 0000000..6c987ed
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/service/GunService.java
@@ -0,0 +1,23 @@
+package org.springblade.modules.equipage.service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.equipage.entity.Gun;
+import org.springblade.modules.equipage.vo.GunVo;
+
+public interface GunService extends IService<Gun> {
+
+	/**
+     * 枪支详情
+	 * @param gun 枪支信息对象
+	 * @return
+     */
+	GunVo selectGunInfo(Gun gun);
+
+	/**
+     * 枪支分页信息
+	 * @param page
+     * @param gun 枪支信息对象
+	 * @return
+     */
+	IPage<GunVo> selectGunPage(IPage<GunVo> page, GunVo gun);
+}
diff --git a/src/main/java/org/springblade/modules/equipage/service/impl/CarServiceImpl.java b/src/main/java/org/springblade/modules/equipage/service/impl/CarServiceImpl.java
new file mode 100644
index 0000000..9f9b908
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/service/impl/CarServiceImpl.java
@@ -0,0 +1,37 @@
+package org.springblade.modules.equipage.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.equipage.entity.Car;
+import org.springblade.modules.equipage.mapper.CarMapper;
+import org.springblade.modules.equipage.service.CarService;
+import org.springblade.modules.equipage.vo.CarVo;
+import org.springframework.stereotype.Service;
+
+/**
+ * 车辆服务实现类
+ * @author zhongrj
+ */
+@Service
+public class CarServiceImpl extends ServiceImpl<CarMapper, Car> implements CarService {
+
+	/**
+	 * 车辆分页信息
+	 * @param page
+	 * @param car 车辆信息对象
+	 * @return
+	 */
+	@Override
+	public IPage<CarVo> selectCarPage(IPage<CarVo> page, CarVo car) {
+		return page.setRecords(baseMapper.selectCarPage(page, car));
+	}
+
+	/**
+	 * 详情
+	 * @param car 车辆信息对象
+	 */
+	@Override
+	public CarVo selectCarInfo(Car car) {
+		return baseMapper.selectCarInfo(car);
+	}
+}
diff --git a/src/main/java/org/springblade/modules/equipage/service/impl/EquipageServiceImpl.java b/src/main/java/org/springblade/modules/equipage/service/impl/EquipageServiceImpl.java
new file mode 100644
index 0000000..d55061a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/service/impl/EquipageServiceImpl.java
@@ -0,0 +1,33 @@
+
+package org.springblade.modules.equipage.service.impl;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.equipage.entity.Equipage;
+import org.springblade.modules.equipage.mapper.EquipageMapper;
+import org.springblade.modules.equipage.service.EquipageService;
+import org.springblade.modules.equipage.vo.EquipageVo;
+import org.springframework.stereotype.Service;
+
+/**
+ * 装备服务实现类
+ * @author zhongrj
+ */
+@Service
+public class EquipageServiceImpl extends ServiceImpl<EquipageMapper, Equipage> implements EquipageService {
+
+	@Override
+	public IPage<EquipageVo> selectEquipagePage(IPage<EquipageVo> page, EquipageVo rquipage) {
+		return page.setRecords(baseMapper.selectEquipagePage(page, rquipage));
+	}
+
+	/**
+	 * 详情
+	 * @param rquipage 装备信息对象
+	 */
+	@Override
+	public EquipageVo selectEquipageInfo(Equipage rquipage) {
+		return baseMapper.selectEquipageInfo(rquipage);
+	}
+}
diff --git a/src/main/java/org/springblade/modules/equipage/service/impl/GunServiceImpl.java b/src/main/java/org/springblade/modules/equipage/service/impl/GunServiceImpl.java
new file mode 100644
index 0000000..984a56f
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/service/impl/GunServiceImpl.java
@@ -0,0 +1,37 @@
+package org.springblade.modules.equipage.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.equipage.entity.Gun;
+import org.springblade.modules.equipage.mapper.GunMapper;
+import org.springblade.modules.equipage.service.GunService;
+import org.springblade.modules.equipage.vo.GunVo;
+import org.springframework.stereotype.Service;
+
+/**
+ * 枪支服务实现类
+ * @author zhongrj
+ */
+@Service
+public class GunServiceImpl extends ServiceImpl<GunMapper, Gun> implements GunService {
+
+	/**
+     * 枪支分页信息
+	 * @param page
+     * @param gun 枪支信息对象
+     * @return
+     */
+	@Override
+	public IPage<GunVo> selectGunPage(IPage<GunVo> page, GunVo gun) {
+		return page.setRecords(baseMapper.selectGunPage(page, gun));
+	}
+
+	/**
+	 * 详情
+	 * @param gun 枪支信息对象
+	 */
+	@Override
+	public GunVo selectGunInfo(Gun gun) {
+		return baseMapper.selectGunInfo(gun);
+	}
+}
diff --git a/src/main/java/org/springblade/modules/equipage/vo/CarVo.java b/src/main/java/org/springblade/modules/equipage/vo/CarVo.java
new file mode 100644
index 0000000..194abb1
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/vo/CarVo.java
@@ -0,0 +1,19 @@
+package org.springblade.modules.equipage.vo;
+
+import lombok.Data;
+import org.springblade.modules.equipage.entity.Car;
+
+import java.io.Serializable;
+
+/**
+ * @author zhongrj
+ * @since 2021-07-07
+ */
+@Data
+public class CarVo extends Car implements Serializable {
+
+	/**
+	 * 保安单位名称
+	 */
+	private String tenantName;
+}
diff --git a/src/main/java/org/springblade/modules/equipage/vo/EquipageVo.java b/src/main/java/org/springblade/modules/equipage/vo/EquipageVo.java
new file mode 100644
index 0000000..782ee3a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/vo/EquipageVo.java
@@ -0,0 +1,15 @@
+package org.springblade.modules.equipage.vo;
+
+import lombok.Data;
+import org.springblade.modules.equipage.entity.Equipage;
+
+import java.io.Serializable;
+
+/**
+ * @author zhongrj
+ */
+@Data
+public class EquipageVo extends Equipage implements Serializable {
+
+	private String tenantName;
+}
diff --git a/src/main/java/org/springblade/modules/equipage/vo/GunVo.java b/src/main/java/org/springblade/modules/equipage/vo/GunVo.java
new file mode 100644
index 0000000..826b0fc
--- /dev/null
+++ b/src/main/java/org/springblade/modules/equipage/vo/GunVo.java
@@ -0,0 +1,15 @@
+package org.springblade.modules.equipage.vo;
+
+import lombok.Data;
+import org.springblade.modules.equipage.entity.Gun;
+
+import java.io.Serializable;
+
+/**
+ * @author zhongrj
+ */
+@Data
+public class GunVo extends Gun implements Serializable {
+
+	private String tenantName;
+}
diff --git a/src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java b/src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java
new file mode 100644
index 0000000..e60cb7c
--- /dev/null
+++ b/src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java
@@ -0,0 +1,87 @@
+package org.springblade.modules.training.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.training.entity.TrainingRegistration;
+import org.springblade.modules.training.service.TrainingRegistrationService;
+import org.springblade.modules.training.vo.TrainingRegistrationVo;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author zhongrj
+ * @time 2021-07-12
+ * @desc 报名培训管理控制层
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/trainingRegistration")
+public class TrainingRegistrationController {
+
+	private final TrainingRegistrationService trainingRegistrationService;
+
+	/**
+	 * 自定义分页
+	 * @param query page,size
+	 * @param trainingRegistration 报名培训信息对象
+	 */
+	@GetMapping("/page")
+	public R<IPage<TrainingRegistrationVo>> page(TrainingRegistrationVo trainingRegistration, Query query) {
+		IPage<TrainingRegistrationVo> pages = trainingRegistrationService.selectTrainingRegistrationPage(Condition.getPage(query), trainingRegistration);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增
+	 * @param trainingRegistration 报名培训信息对象
+	 */
+	@PostMapping("/save")
+	@ApiOperation(value = "新增", notes = "传入trainingRegistration")
+	public R save(@RequestBody TrainingRegistration trainingRegistration) {
+		return R.status(trainingRegistrationService.save(trainingRegistration));
+	}
+
+	/**
+	 * 修改
+	 * @param trainingRegistration 报名培训信息对象
+	 */
+	@PostMapping("/update")
+	public R update(@RequestBody TrainingRegistration trainingRegistration) {
+		return R.status(trainingRegistrationService.updateById(trainingRegistration));
+	}
+
+	/**
+	 * 新增或修改
+	 * @param trainingRegistration 报名培训信息对象
+	 */
+	@PostMapping("/submit")
+	public R submit(@RequestBody TrainingRegistration trainingRegistration) {
+		return R.status(trainingRegistrationService.saveOrUpdate(trainingRegistration));
+	}
+
+	/**
+	 * 删除
+	 * @param ids 报名培训信息ids 数组
+	 */
+	@PostMapping("/remove")
+	public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) {
+		return R.status(trainingRegistrationService.removeByIds(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 详情
+	 * @param trainingRegistration 报名培训信息对象
+	 */
+	@GetMapping("/detail")
+	@ApiOperation(value = "详情", notes = "传入trainingRegistration")
+	public R<TrainingRegistrationVo> detail(TrainingRegistration trainingRegistration) {
+		TrainingRegistrationVo detail = trainingRegistrationService.selectTrainingRegistrationInfo(trainingRegistration);
+		return R.data(detail);
+	}
+
+}
diff --git a/src/main/java/org/springblade/modules/training/entity/TrainingRegistration.java b/src/main/java/org/springblade/modules/training/entity/TrainingRegistration.java
new file mode 100644
index 0000000..607bd64
--- /dev/null
+++ b/src/main/java/org/springblade/modules/training/entity/TrainingRegistration.java
@@ -0,0 +1,99 @@
+package org.springblade.modules.training.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;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 报名培训实体类
+ * @author zhongrj
+ * @time 2021-07-12
+ */
+@Data
+@TableName("sys_training_registration")
+public class TrainingRegistration implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 报名培训主键id
+	 */
+	@TableId(value = "id",type = IdType.AUTO)
+	private Long id;
+
+	/**
+	 * 组织机构id
+	 */
+	@TableField("dept_id")
+	private Long deptId;
+
+	/**
+	 * 报名人姓名
+	 */
+	private String name;
+
+	/**
+	 * 性别  1:男   2:女
+	 */
+	private Integer sex;
+
+	/**
+	 * 年龄
+	 */
+	private Integer age;
+
+	/**
+	 * 身高
+	 */
+	private String height;
+
+	/**
+	 * 体重
+	 */
+	private String weight;
+
+	/**
+	 * 报名电话
+	 */
+	private String phone;
+
+	/**
+	 * 身份证号
+	 */
+	@TableField("id_card_no")
+	private String idCardNo;
+
+	/**
+	 * 学历证书url
+	 */
+	@TableField("academic_url")
+	private String academicUrl;
+
+	/**
+	 * 培训公司名称
+	 */
+	@TableField("training_unit_name")
+	private String trainingUnitName;
+
+
+
+	/**
+	 * 培训时间
+	 */
+	@TableField("training_time")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date trainingTime;
+
+	/**
+	 * 是否取消报名  1:否   2:是
+	 */
+	private Integer cancel;
+
+}
diff --git a/src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.java b/src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.java
new file mode 100644
index 0000000..13a0cef
--- /dev/null
+++ b/src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.java
@@ -0,0 +1,33 @@
+package org.springblade.modules.training.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.training.entity.TrainingRegistration;
+import org.springblade.modules.training.vo.TrainingRegistrationVo;
+
+import java.util.List;
+
+/**
+ * 报名培训Mapper 接口
+ * @author zhongrj
+ */
+public interface TrainingRegistrationMapper extends BaseMapper<TrainingRegistration> {
+
+
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page   分页
+	 * @param recruitment 实体
+	 * @return
+	 */
+	List<TrainingRegistrationVo> selectTrainingRegistrationPage(IPage page, @Param("trainingRegistration") TrainingRegistrationVo recruitment);
+
+	/**
+	 * 详情
+	 * @param trainingRegistration 报名培训信息对象
+	 */
+	TrainingRegistrationVo selectTrainingRegistrationInfo(@Param("trainingRegistration") TrainingRegistration trainingRegistration);
+}
diff --git a/src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.xml b/src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.xml
new file mode 100644
index 0000000..0d23c0c
--- /dev/null
+++ b/src/main/java/org/springblade/modules/training/mapper/TrainingRegistrationMapper.xml
@@ -0,0 +1,44 @@
+<?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="org.springblade.modules.training.mapper.TrainingRegistrationMapper">
+
+    <!--报名培训分页信息-->
+    <select id="selectTrainingRegistrationPage" resultType="org.springblade.modules.training.vo.TrainingRegistrationVo">
+        SELECT
+            sr.*,bt.dept_name AS deptName
+        FROM
+            sys_training_registration sr
+        LEFT JOIN
+            blade_dept bt
+        ON
+            sr.dept_id = bt.id
+        WHERE
+            1=1
+        <if test="trainingRegistration.deptName!=null and  trainingRegistration.deptName!=''">
+            and bt.dept_name like concat('%', #{trainingRegistration.deptName},'%')
+        </if>
+        <if test="trainingRegistration.name!=null and  trainingRegistration.name!=''">
+            and sr.name like concat('%', #{trainingRegistration.name},'%')
+        </if>
+        <if test="trainingRegistration.cancel!=null">
+            and sr.cancel = #{trainingRegistration.cancel}
+        </if>
+    </select>
+
+    <!--报名培训详情信息-->
+    <select id="selectTrainingRegistrationInfo" resultType="org.springblade.modules.training.vo.TrainingRegistrationVo">
+        SELECT
+            sr.*,bt.dept_name AS deptName
+        FROM
+            sys_training_registration sr
+        LEFT JOIN
+            blade_dept bt
+        ON
+            sr.dept_id = bt.id
+        WHERE
+            1=1
+        <if test="trainingRegistration.id!=null">
+            and sr.id = #{trainingRegistration.id}
+        </if>
+    </select>
+</mapper>
diff --git a/src/main/java/org/springblade/modules/training/service/TrainingRegistrationService.java b/src/main/java/org/springblade/modules/training/service/TrainingRegistrationService.java
new file mode 100644
index 0000000..a328e91
--- /dev/null
+++ b/src/main/java/org/springblade/modules/training/service/TrainingRegistrationService.java
@@ -0,0 +1,27 @@
+package org.springblade.modules.training.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.training.entity.TrainingRegistration;
+import org.springblade.modules.training.vo.TrainingRegistrationVo;
+
+/**
+ * 报名培训服务类
+ * @author zhongrj
+ */
+public interface TrainingRegistrationService extends IService<TrainingRegistration> {
+
+	/**
+	 * 自定义分页
+	 * @param page
+	 * @param trainingRegistration
+	 * @return
+	 */
+	IPage<TrainingRegistrationVo> selectTrainingRegistrationPage(IPage<TrainingRegistrationVo> page, TrainingRegistrationVo recruitment);
+
+	/**
+	 * 详情
+	 * @param trainingRegistration 报名培训信息对象
+	 */
+	TrainingRegistrationVo selectTrainingRegistrationInfo(TrainingRegistration trainingRegistration);
+}
diff --git a/src/main/java/org/springblade/modules/training/service/impl/TrainingRegistrationServiceImpl.java b/src/main/java/org/springblade/modules/training/service/impl/TrainingRegistrationServiceImpl.java
new file mode 100644
index 0000000..a5086db
--- /dev/null
+++ b/src/main/java/org/springblade/modules/training/service/impl/TrainingRegistrationServiceImpl.java
@@ -0,0 +1,32 @@
+
+package org.springblade.modules.training.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.training.entity.TrainingRegistration;
+import org.springblade.modules.training.mapper.TrainingRegistrationMapper;
+import org.springblade.modules.training.service.TrainingRegistrationService;
+import org.springblade.modules.training.vo.TrainingRegistrationVo;
+import org.springframework.stereotype.Service;
+
+/**
+ * 报名培训服务实现类
+ * @author zhongrj
+ */
+@Service
+public class TrainingRegistrationServiceImpl extends ServiceImpl<TrainingRegistrationMapper, TrainingRegistration> implements TrainingRegistrationService {
+
+	@Override
+	public IPage<TrainingRegistrationVo> selectTrainingRegistrationPage(IPage<TrainingRegistrationVo> page, TrainingRegistrationVo trainingRegistration) {
+		return page.setRecords(baseMapper.selectTrainingRegistrationPage(page, trainingRegistration));
+	}
+
+	/**
+	 * 详情
+	 * @param trainingRegistration 报名培训信息对象
+	 */
+	@Override
+	public TrainingRegistrationVo selectTrainingRegistrationInfo(TrainingRegistration trainingRegistration) {
+		return baseMapper.selectTrainingRegistrationInfo(trainingRegistration);
+	}
+}
diff --git a/src/main/java/org/springblade/modules/training/vo/TrainingRegistrationVo.java b/src/main/java/org/springblade/modules/training/vo/TrainingRegistrationVo.java
new file mode 100644
index 0000000..08db50c
--- /dev/null
+++ b/src/main/java/org/springblade/modules/training/vo/TrainingRegistrationVo.java
@@ -0,0 +1,18 @@
+package org.springblade.modules.training.vo;
+
+import lombok.Data;
+import org.springblade.modules.training.entity.TrainingRegistration;
+
+import java.io.Serializable;
+
+/**
+ * @author zhongrj
+ */
+@Data
+public class TrainingRegistrationVo extends TrainingRegistration implements Serializable {
+
+	/**
+	 * 组织机构名称
+	 */
+	private String deptName;
+}

--
Gitblit v1.9.3