From e415654abddef75f59efee03548c01a3199d8850 Mon Sep 17 00:00:00 2001 From: Yang Haoyu <2241399212@qq.com> Date: Tue, 21 Nov 2023 19:42:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=BD=A6=E8=BE=86=E8=A1=8C?= =?UTF-8?q?=E9=A9=B6=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/shiyi/internet/domain/Drive.java | 4 +- .../shiyi/internet/domain/DrivingRecord.java | 34 +++-- .../com/shiyi/internet/domain/Fencing.java | 33 +++-- .../shiyi/internet/FencingApplication.java | 4 +- .../controller/DrivingRecordController.java | 140 ++++++++++++++++++ .../internet/mapper/DrivingRecordMapper.java | 41 +++++ .../service/DrivingRecordService.java | 25 ++++ .../impl/DrivingRecordServiceimpl.java | 67 +++++++++ .../resources/mapper/DrivingRecordMapper.xml | 38 +++++ 9 files changed, 357 insertions(+), 29 deletions(-) create mode 100644 fance-menghang-service/src/main/java/com/shiyi/internet/controller/DrivingRecordController.java create mode 100644 fance-menghang-service/src/main/java/com/shiyi/internet/mapper/DrivingRecordMapper.java create mode 100644 fance-menghang-service/src/main/java/com/shiyi/internet/service/DrivingRecordService.java create mode 100644 fance-menghang-service/src/main/java/com/shiyi/internet/service/impl/DrivingRecordServiceimpl.java create mode 100644 fance-menghang-service/src/main/resources/mapper/DrivingRecordMapper.xml diff --git a/fance-menghang-common/src/main/java/com/shiyi/internet/domain/Drive.java b/fance-menghang-common/src/main/java/com/shiyi/internet/domain/Drive.java index 2269325..152bcdd 100644 --- a/fance-menghang-common/src/main/java/com/shiyi/internet/domain/Drive.java +++ b/fance-menghang-common/src/main/java/com/shiyi/internet/domain/Drive.java @@ -1,6 +1,8 @@ package com.shiyi.internet.domain; +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.fate.common.core.web.domain.BaseEntity; import io.swagger.annotations.ApiModelProperty; @@ -25,7 +27,7 @@ public class Drive extends BaseEntity { @ApiModelProperty("驱动零件ID") - @TableField("drive_id") + @TableId(value = "drive_id",type = IdType.AUTO) private String driveId; @ApiModelProperty("配件型号") diff --git a/fance-menghang-common/src/main/java/com/shiyi/internet/domain/DrivingRecord.java b/fance-menghang-common/src/main/java/com/shiyi/internet/domain/DrivingRecord.java index bc5acdf..ea5c816 100644 --- a/fance-menghang-common/src/main/java/com/shiyi/internet/domain/DrivingRecord.java +++ b/fance-menghang-common/src/main/java/com/shiyi/internet/domain/DrivingRecord.java @@ -24,22 +24,30 @@ import java.util.Date; @NoArgsConstructor @AllArgsConstructor @EqualsAndHashCode(callSuper = true) -@TableName("t_driving") +@TableName("car_record") public class DrivingRecord extends BaseEntity { - @ApiModelProperty("状态ID") - @TableId(value = "driving_id", type = IdType.AUTO) - private Integer drivingId ; + @ApiModelProperty("行驶记录ID") + @TableId(value = "record_id",type = IdType.AUTO) + private Integer recordId ; - @ApiModelProperty("车辆vin") - @TableField("driving_vin") - private String drivingVin ; + @ApiModelProperty(name = "车辆vin") + @TableField("car_vin") + private String carVin ; - @ApiModelProperty("上线时间") - @TableId(value = "driving_starttime") - private Date drivingStarttime ; + @ApiModelProperty(name = "开始时间") + @TableField("start_time") + private Date startTime ; - @ApiModelProperty("下线时间") - @TableId(value = "driving_endtime") - private Date drivingEndtime ; + @ApiModelProperty(name = "结束时间") + @TableField("end_time") + private Date endTime ; + + @ApiModelProperty(name = "开始标识") + @TableField("start_key") + private String startKey ; + + @ApiModelProperty(name = "结束标识") + @TableField("end_key") + private String endKey ; } diff --git a/fance-menghang-common/src/main/java/com/shiyi/internet/domain/Fencing.java b/fance-menghang-common/src/main/java/com/shiyi/internet/domain/Fencing.java index e75e2ea..835a0ee 100644 --- a/fance-menghang-common/src/main/java/com/shiyi/internet/domain/Fencing.java +++ b/fance-menghang-common/src/main/java/com/shiyi/internet/domain/Fencing.java @@ -1,5 +1,8 @@ package com.shiyi.internet.domain; +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 com.fate.common.core.web.domain.BaseEntity; @@ -26,23 +29,27 @@ import java.util.Date; @TableName("t_fencing") public class Fencing extends BaseEntity { - @ApiModelProperty(name = "电子围栏ID",notes = "") + @ApiModelProperty("电子围栏ID") + @TableId(value = "fencing_id",type = IdType.AUTO) private Integer fencingId ; - /** 围栏名称 */ - @ApiModelProperty(name = "围栏名称",notes = "") + + @ApiModelProperty("围栏名称") + @TableField(value = "fencing_name") private String fencingName ; - /** 围栏经纬度 */ - @ApiModelProperty(name = "围栏经纬度",notes = "") + + @ApiModelProperty("围栏经纬度") + @TableField(value = "fencing_lat") private String fencingLat ; - /** 激活状态 */ - @ApiModelProperty(name = "激活状态",notes = "") + + @ApiModelProperty("激活状态") + @TableField(value = "fencing_status") private Integer fencingStatus ; - /** 操作时间 */ - @ApiModelProperty(name = "操作时间",notes = "") - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + + @ApiModelProperty("操作时间") + @TableField(value = "fencing_time") private Date fencingTime ; - /** 操作者 */ - @ApiModelProperty(name = "操作者",notes = "") + + @ApiModelProperty("操作者") + @TableField(value = "create_user_id") private Integer createUserId ; } diff --git a/fance-menghang-service/src/main/java/com/shiyi/internet/FencingApplication.java b/fance-menghang-service/src/main/java/com/shiyi/internet/FencingApplication.java index c6379c6..72832f0 100644 --- a/fance-menghang-service/src/main/java/com/shiyi/internet/FencingApplication.java +++ b/fance-menghang-service/src/main/java/com/shiyi/internet/FencingApplication.java @@ -20,8 +20,8 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; public class FencingApplication { public static void main(String[] args) { SpringApplication.run(FencingApplication.class,args); - System.out.println("/**\n" + - "\n" + + System.out.println("(♥◠‿◠)ノ゙ 模块启动成功 ლ(´ڡ`ლ)゙ \n" + + " \n" + " _oo0oo_\n" + " o8888888o\n" + " 88\" . \"88\n" + diff --git a/fance-menghang-service/src/main/java/com/shiyi/internet/controller/DrivingRecordController.java b/fance-menghang-service/src/main/java/com/shiyi/internet/controller/DrivingRecordController.java new file mode 100644 index 0000000..a9c2161 --- /dev/null +++ b/fance-menghang-service/src/main/java/com/shiyi/internet/controller/DrivingRecordController.java @@ -0,0 +1,140 @@ +package com.shiyi.internet.controller; + +import com.alibaba.fastjson.JSONObject; +import com.fate.common.core.domain.Result; +import com.fate.common.core.utils.poi.ExcelUtil; +import com.fate.common.core.web.controller.BaseController; +import com.fate.common.log.annotation.Log; +import com.fate.common.log.enums.BusinessType; +import com.fate.common.security.annotation.RequiresPermissions; +import com.shiyi.internet.domain.DrivingRecord; +import com.shiyi.internet.service.DrivingRecordService; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * @Description : 车辆行驶控制层 + * @Author : YangHaoYu + * @Date: 2023-11-21 14:14 + */ +@RestController +@RequestMapping("/record") +@Log4j2 +public class DrivingRecordController extends BaseController { + + @Autowired + private DrivingRecordService drivingRecordService; + private HttpServletRequest request; + + /** + * @Description:车辆行驶记录 + No such property: code for class: Script1 + * @return: com.fate.common.core.domain.Result> + * @Author: YHY + * @Updator: YHY + * @Date 2023/11/21 14:38 + */ + @RequiresPermissions("record:record:list") + @GetMapping("/list") + public Result> list(DrivingRecord drivingRecord){ + log.info("功能名称:车辆行驶记录,请求URL:【{}】,请求方法:【{}】",request.getRequestURI(), + request.getMethod()); + Result> result = drivingRecordService.listDriving(drivingRecord); + log.info("功能名称:车辆行驶记录,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), + request.getMethod(), JSONObject.toJSONString(result)); + return result; + } + + /** + * 导出车辆行驶记录 + * @param response + * @param drivingRecord + */ + @RequiresPermissions("record:record:export") + @Log(title = "导出车辆行驶记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response ,DrivingRecord drivingRecord){ + Result> list = drivingRecordService.listDriving(drivingRecord); //车辆行驶车辆对象 + ExcelUtil util = new ExcelUtil<>(DrivingRecord.class); + util.exportExcel(response, list.getData(), "车辆行驶数据"); //对list数据源将其里面的数据导入到Excel中 + } + + + /** + * 查询详细车辆行驶记录 + * @param recordId + * @return + */ + @GetMapping("fingCarRecordById/{recordId}") + public Result fingCarRecordById(@PathVariable Integer recordId){ + log.info("功能名称:查询详细车辆行驶记录,请求URL:【{}】,请求方法:【{}】,请求参数:【{}】",request.getRequestURI(), + request.getMethod(),recordId); + DrivingRecord drivingRecord = drivingRecordService.fingCarRecordById(recordId); + Result result = Result.success(drivingRecord); + log.info("功能名称:查询详细车辆行驶记录,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + + /** + * 添加车辆行驶记录 + * @param drivingRecord + * @return + */ + @RequiresPermissions("record:record:add") + @Log(title = "车辆行驶记录", businessType = BusinessType.INSERT) + @PostMapping() + public Result add(@RequestBody DrivingRecord drivingRecord){ + log.info("功能名称:添加车辆行驶记录,请求URL:【{}】,请求防范:【{}】,请求参数:【{}】",request.getRequestURI(), + request.getMethod(),drivingRecord); + drivingRecordService.insertDriving(drivingRecord); + Result result = Result.success(); + log.info("功能名称:添加车辆行驶记录,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + /** + * 修改车辆行驶记录 + * @param drivingRecord + * @return + */ + @RequiresPermissions("record:record:edit") + @Log(title = "修改车辆行驶记录", businessType = BusinessType.UPDATE) + @PostMapping("/edit") + public Result edit(@RequestBody DrivingRecord drivingRecord){ + log.info("功能名称:修改车辆行驶记录,请求URL:【{}】,请求方法:【{}】,请求参数:【{】】",request.getRequestURI(), + request.getMethod(),drivingRecord); + drivingRecordService.updateDrivingRecord(drivingRecord); + Result result = Result.success(); + log.info("功能名称:修改车辆行驶记录,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + /** + * 根据ID删除车辆行驶记录 + * @param recordId + * @return + */ + @RequiresPermissions("record:record:remove") + @Log(title = "根据ID删除车辆行驶记录", businessType = BusinessType.DELETE) + @PostMapping("/remove/{recordId}") + public Result remove(@PathVariable Integer recordId){ + log.info("功能名称:根据ID删除车辆行驶记录,请求URL:【{}】,请求方法:【{}】,请求参数:【{}】",request.getRequestURI(), + request.getMethod(),recordId); + drivingRecordService.deleteDrivingRecord(recordId); + Result result = Result.success(); + log.info("功能名称:根据ID删除车辆行驶记录,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + +} diff --git a/fance-menghang-service/src/main/java/com/shiyi/internet/mapper/DrivingRecordMapper.java b/fance-menghang-service/src/main/java/com/shiyi/internet/mapper/DrivingRecordMapper.java new file mode 100644 index 0000000..5a4e0e2 --- /dev/null +++ b/fance-menghang-service/src/main/java/com/shiyi/internet/mapper/DrivingRecordMapper.java @@ -0,0 +1,41 @@ +package com.shiyi.internet.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.shiyi.internet.domain.DrivingRecord; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @Description : 车辆行驶控制层 + * @Author : YangHaoYu + * @Date: 2023-11-21 14:29 + */ +@Mapper +public interface DrivingRecordMapper extends BaseMapper { + /** + * @param drivingRecord + * @return + */ + List listDriving(DrivingRecord drivingRecord); + + /** + * @param recordId + * @return + */ + DrivingRecord fingCarRecordById(@Param("recordId") Integer recordId); + + /** + * @param drivingRecord + */ + void insertDriving(DrivingRecord drivingRecord); + + /** + * @param drivingRecord + */ + void updateDrivingRecord(DrivingRecord drivingRecord); + + void deleteDrivingRecord(@Param("recordId") Integer recordId); + +} diff --git a/fance-menghang-service/src/main/java/com/shiyi/internet/service/DrivingRecordService.java b/fance-menghang-service/src/main/java/com/shiyi/internet/service/DrivingRecordService.java new file mode 100644 index 0000000..29fbbaf --- /dev/null +++ b/fance-menghang-service/src/main/java/com/shiyi/internet/service/DrivingRecordService.java @@ -0,0 +1,25 @@ +package com.shiyi.internet.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.fate.common.core.domain.Result; +import com.shiyi.internet.domain.DrivingRecord; + +import java.util.List; + +/** + * @Description :DrivingRecordService + * @Author : YangHaoYu + * @Date: 2023-11-21 14:26 + */ +public interface DrivingRecordService extends IService { + + Result> listDriving(DrivingRecord drivingRecord); + + DrivingRecord fingCarRecordById(Integer recordId); + + void insertDriving(DrivingRecord drivingRecord); + + void updateDrivingRecord(DrivingRecord drivingRecord); + + void deleteDrivingRecord(Integer recordId); +} diff --git a/fance-menghang-service/src/main/java/com/shiyi/internet/service/impl/DrivingRecordServiceimpl.java b/fance-menghang-service/src/main/java/com/shiyi/internet/service/impl/DrivingRecordServiceimpl.java new file mode 100644 index 0000000..18e6684 --- /dev/null +++ b/fance-menghang-service/src/main/java/com/shiyi/internet/service/impl/DrivingRecordServiceimpl.java @@ -0,0 +1,67 @@ +package com.shiyi.internet.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.fate.common.core.domain.Result; +import com.shiyi.internet.domain.DrivingRecord; +import com.shiyi.internet.mapper.DrivingRecordMapper; +import com.shiyi.internet.service.DrivingRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @Description : 车辆行驶业务层 + * @Author : YangHaoYu + * @Date: 2023-11-21 14:27 + */ +@Service +public class DrivingRecordServiceimpl extends ServiceImpl implements DrivingRecordService { + + @Autowired + private DrivingRecordMapper drivingRecordMapper; + + /** + * 车辆行驶记录 + * @return + */ + @Override + public Result> listDriving(DrivingRecord drivingRecord) { + List list = drivingRecordMapper.listDriving(drivingRecord); + return Result.success(list); + } + + /** + * 查询详细车辆行驶记录 + * @param recordId + * @return + */ + @Override + public DrivingRecord fingCarRecordById(Integer recordId) { + return drivingRecordMapper.fingCarRecordById(recordId); + } + + /** + * 添加车辆行驶记录 + * @param drivingRecord + */ + @Override + public void insertDriving(DrivingRecord drivingRecord) { + drivingRecordMapper.insertDriving(drivingRecord); + } + + /** + * 修改车辆行驶记录 + * @param drivingRecord + */ + @Override + public void updateDrivingRecord(DrivingRecord drivingRecord) { + drivingRecordMapper.updateDrivingRecord(drivingRecord); + } + + @Override + public void deleteDrivingRecord(Integer recordId) { + drivingRecordMapper.deleteDrivingRecord(recordId); + } + +} diff --git a/fance-menghang-service/src/main/resources/mapper/DrivingRecordMapper.xml b/fance-menghang-service/src/main/resources/mapper/DrivingRecordMapper.xml new file mode 100644 index 0000000..e60b1de --- /dev/null +++ b/fance-menghang-service/src/main/resources/mapper/DrivingRecordMapper.xml @@ -0,0 +1,38 @@ + + + + + insert into car_record ( + record_id, + car_vin, + start_time, + end_time, + start_key, + end_key) values( + #{recordId}, + #{carVin}, + #{startTime}, + #{endTime}, + #{startKey}, + #{endKey}) + + + update car_record set + car_vin=#{carVin}, + start_time=#{startTime}, + end_time=#{endTime}, + start_key=#{startKey}, + end_key=#{endKey} where record_id=#{recordId} + + + delete from car_record where record_id=#{recordId} + + + + + +