From 158514632e30d06a05150237e49df2ceeea34481 Mon Sep 17 00:00:00 2001 From: luojian <1327479187@qq.com> Date: Thu, 2 Jan 2025 11:28:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=8A=E4=B8=8B=E7=8F=AD?= =?UTF-8?q?=E6=89=93=E5=8D=A1=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/BizDriverClockController.java | 2 +- .../controller/biz/BizOrderController.java | 2 + .../controller/biz/LargeScreenController.java | 25 +-------- .../system/SysNoticeController.java | 13 +++++ .../java/com/cpxt/biz/domain/BizDriver.java | 5 ++ .../com/cpxt/biz/domain/BizDriverClock.java | 47 ++++++++++------ .../biz/domain/vo/BizCustomerRouteVo.java | 56 +++++++++++++++++++ .../impl/BizDriverClockServiceImpl.java | 13 +++-- .../service/impl/BizDriverServiceImpl.java | 16 +++++- .../biz/service/impl/BizOrderServiceImpl.java | 6 +- 10 files changed, 135 insertions(+), 50 deletions(-) create mode 100644 cpxt-system/src/main/java/com/cpxt/biz/domain/vo/BizCustomerRouteVo.java diff --git a/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/BizDriverClockController.java b/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/BizDriverClockController.java index 372d400..1a2dc0c 100644 --- a/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/BizDriverClockController.java +++ b/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/BizDriverClockController.java @@ -5,6 +5,7 @@ import javax.servlet.http.HttpServletResponse; import com.cpxt.biz.domain.BizDriverClock; import com.cpxt.biz.service.IBizDriverClockService; +import org.checkerframework.checker.units.qual.A; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -84,7 +85,6 @@ public class BizDriverClockController extends BaseController /** * 修改司机打卡记录 */ - @PreAuthorize("@ss.hasPermi('system:clock:edit')") @Log(title = "司机打卡记录", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody BizDriverClock bizDriverClock) diff --git a/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/BizOrderController.java b/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/BizOrderController.java index 576f4f8..54a5738 100644 --- a/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/BizOrderController.java +++ b/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/BizOrderController.java @@ -5,6 +5,7 @@ import java.util.Map; import javax.servlet.http.HttpServletResponse; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.cpxt.biz.domain.vo.BizCustomerRouteVo; import com.cpxt.biz.domain.vo.BizOrderVo; import com.cpxt.biz.domain.vo.BizOrderVoCustomer; import com.cpxt.common.constant.HttpStatus; @@ -91,6 +92,7 @@ public class BizOrderController extends BaseController { ExcelUtil util = new ExcelUtil(BizOrderVo.class); util.importTemplateExcel(response, "订单数据"); } else { + ExcelUtil util = new ExcelUtil(BizOrderVoCustomer.class); util.importTemplateExcel(response, "订单数据"); } diff --git a/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/LargeScreenController.java b/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/LargeScreenController.java index 468e349..f662e69 100644 --- a/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/LargeScreenController.java +++ b/cpxt-admin/src/main/java/com/cpxt/web/controller/biz/LargeScreenController.java @@ -46,11 +46,9 @@ public class LargeScreenController extends BaseController { @Autowired private BizCustomerShopMapper bizCustomerShopMapper; - @Autowired - private BizDriverClockMapper bizDriverClockMapper; - @Autowired private BizCustomerRouteMapper bizCustomerRouteMapper; + @Autowired private BizCustomerWarehouseMapper bizCustomerWarehouseMapper; @@ -92,20 +90,6 @@ public class LargeScreenController extends BaseController { return AjaxResult.success(largeScreenEntity); } - /** - * 司机提醒 - */ - @GetMapping("/driver/remind") - public AjaxResult driverRemind() - { - List bizDriverClockList = getBizDriverClockList(today); - for (BizDriverClock bizDriverClock : bizDriverClockList) { - bizDriverClock.setDriverName(bizDriverMapper.selectById(bizDriverClock.getDriverId()).getName()); - } - largeScreenEntity.setBizDriverClockList(bizDriverClockList); - return AjaxResult.success(largeScreenEntity); - } - /** * 总体概览 */ @@ -302,13 +286,6 @@ public class LargeScreenController extends BaseController { return bizDriverMapper.selectCount(queryWrapper); } - private List getBizDriverClockList(String today) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.like(BizDriverClock::getClockTime,today); - queryWrapper.eq(BizDriverClock::getStatus,1); - return bizDriverClockMapper.selectList(queryWrapper); - } - private long getIncompleteOrder(String today) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.like(BizOrder::getCreateTime, today); diff --git a/cpxt-admin/src/main/java/com/cpxt/web/controller/system/SysNoticeController.java b/cpxt-admin/src/main/java/com/cpxt/web/controller/system/SysNoticeController.java index e213210..192ad69 100644 --- a/cpxt-admin/src/main/java/com/cpxt/web/controller/system/SysNoticeController.java +++ b/cpxt-admin/src/main/java/com/cpxt/web/controller/system/SysNoticeController.java @@ -1,6 +1,9 @@ package com.cpxt.web.controller.system; import java.util.List; + +import com.cpxt.common.annotation.Anonymous; +import org.checkerframework.checker.units.qual.A; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; @@ -44,6 +47,16 @@ public class SysNoticeController extends BaseController return getDataTable(list); } + /** + * 获取通知公告列表(不分页) + */ + @Anonymous + @GetMapping("/list2") + public AjaxResult list2(SysNotice notice) + { + return AjaxResult.success(noticeService.selectNoticeList(notice)); + } + /** * 根据通知公告编号获取详细信息 */ diff --git a/cpxt-system/src/main/java/com/cpxt/biz/domain/BizDriver.java b/cpxt-system/src/main/java/com/cpxt/biz/domain/BizDriver.java index 47203fe..025083b 100644 --- a/cpxt-system/src/main/java/com/cpxt/biz/domain/BizDriver.java +++ b/cpxt-system/src/main/java/com/cpxt/biz/domain/BizDriver.java @@ -1,5 +1,6 @@ package com.cpxt.biz.domain; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import org.apache.commons.lang3.builder.ToStringBuilder; @@ -8,6 +9,7 @@ import com.cpxt.common.annotation.Excel; import com.cpxt.common.core.domain.BaseEntity; import java.util.Date; +import java.util.List; /** * 司机对象 biz_driver @@ -97,4 +99,7 @@ public class BizDriver /** 在线状态 1 在线 0 离线 */ private Integer onlineStatus; + @TableField(exist = false) + private List bizDriverClockList; + } diff --git a/cpxt-system/src/main/java/com/cpxt/biz/domain/BizDriverClock.java b/cpxt-system/src/main/java/com/cpxt/biz/domain/BizDriverClock.java index 78829a5..593d33f 100644 --- a/cpxt-system/src/main/java/com/cpxt/biz/domain/BizDriverClock.java +++ b/cpxt-system/src/main/java/com/cpxt/biz/domain/BizDriverClock.java @@ -28,29 +28,41 @@ public class BizDriverClock @Excel(name = "司机ID") private Long driverId; - @TableField(exist = false) - private String driverName; - - /** 打卡类型 上班 下班 */ - @Excel(name = "打卡类型 上班 下班") - private Integer clockType; - - /** 打卡时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "打卡时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private Date clockTime; - /** 打卡车辆 */ @Excel(name = "打卡车辆") - private Long clockCarId; + private Long carId; /** 打卡车牌号 */ @Excel(name = "打卡车牌号") - private String clockCarNo; + private String carNo; + + + @TableField(exist = false) + private String driverName; + + /** 上班打卡时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "上班打卡时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + private Date onTime; /** 打卡照片 */ - @Excel(name = "打卡照片") - private String clockImg; + @Excel(name = "上班打卡照片") + private String onImg; + + /** 上班打卡说明 */ + private String onRemark; + + /** 下班打卡时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "下班打卡时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + private Date offTime; + + /** 下班打卡照片 */ + @Excel(name = "下班打卡照片") + private String offImg; + + /** 下班打卡说明 */ + private String offRemark; /** 状态 */ @Excel(name = "状态") @@ -64,6 +76,5 @@ public class BizDriverClock @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date updateTime; - /** 备注 */ - private String remark; + } diff --git a/cpxt-system/src/main/java/com/cpxt/biz/domain/vo/BizCustomerRouteVo.java b/cpxt-system/src/main/java/com/cpxt/biz/domain/vo/BizCustomerRouteVo.java new file mode 100644 index 0000000..9446403 --- /dev/null +++ b/cpxt-system/src/main/java/com/cpxt/biz/domain/vo/BizCustomerRouteVo.java @@ -0,0 +1,56 @@ +package com.cpxt.biz.domain.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.cpxt.common.annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +/** + * 路线对象 biz_customer_route + * + * @author YIN + * @date 2024-12-16 + */ +@Data +public class BizCustomerRouteVo +{ + private static final long serialVersionUID = 1L; + + /** ID */ + private Long id; + + /** 客户ID */ +// @Excel(name = "客户ID") + private Long customerId; + + /** 客户名称 */ +// @Excel(name = "客户名称") + private String customerName; + + /** 路线名称 */ + @Excel(name = "路线名称") + private String name; + + /** 状态 */ +// @Excel(name = "状态") + private Integer status; + + /** 创建时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") +// @Excel(name = "创建时间") + private Date createTime; + + /** 更新时间 */ +// @Excel(name = "更新时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date updateTime; + + /** 备注 */ + private String remark; + + @TableField(exist = false) + private List shops; +} diff --git a/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizDriverClockServiceImpl.java b/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizDriverClockServiceImpl.java index d87bf78..edfa97c 100644 --- a/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizDriverClockServiceImpl.java +++ b/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizDriverClockServiceImpl.java @@ -77,14 +77,14 @@ public class BizDriverClockServiceImpl implements IBizDriverClockService List bizOrderList = bizOrderMapper.selectList(queryWrapper); if (bizOrderList.size() > 0){ for (BizOrder bizOrder : bizOrderList) { - bizOrder.setCarId(bizDriverClock.getClockCarId()); - bizOrder.setCarNo(bizDriverClock.getClockCarNo()); + bizOrder.setCarId(bizDriverClock.getCarId()); + bizOrder.setCarNo(bizDriverClock.getCarNo()); bizOrderMapper.updateById(bizOrder); } } - // 2、上班打卡修改司机的状态为在线 下班打卡修改司机的状态为离线 + // 2、上班打卡修改司机的状态为在线 BizDriver bizDriver = bizDriverMapper.selectById(bizDriverClock.getDriverId()); - bizDriver.setOnlineStatus(bizDriverClock.getClockType()); + bizDriver.setOnlineStatus(1); bizDriverMapper.updateById(bizDriver); return bizDriverClockMapper.insert(bizDriverClock); } @@ -96,8 +96,13 @@ public class BizDriverClockServiceImpl implements IBizDriverClockService * @return 结果 */ @Override + @Transactional public int updateBizDriverClock(BizDriverClock bizDriverClock) { + // 同步修改司机的状态为离线 + BizDriver bizDriver = bizDriverMapper.selectById(bizDriverClock.getDriverId()); + bizDriver.setOnlineStatus(0); + bizDriverMapper.updateById(bizDriver); return bizDriverClockMapper.updateById(bizDriverClock); } diff --git a/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizDriverServiceImpl.java b/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizDriverServiceImpl.java index 8fc8790..06a8e99 100644 --- a/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizDriverServiceImpl.java +++ b/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizDriverServiceImpl.java @@ -8,6 +8,8 @@ import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.cpxt.biz.domain.BizCustomerWarehouse; +import com.cpxt.biz.domain.BizDriverClock; +import com.cpxt.biz.mapper.BizDriverClockMapper; import com.cpxt.common.core.domain.entity.SysDept; import com.cpxt.common.core.domain.entity.SysUser; import com.cpxt.common.utils.DateUtils; @@ -34,6 +36,9 @@ public class BizDriverServiceImpl implements IBizDriverService @Autowired private BizDriverMapper bizDriverMapper; + @Autowired + private BizDriverClockMapper bizDriverClockMapper; + @Autowired private SysUserMapper sysUserMapper; @@ -65,7 +70,16 @@ public class BizDriverServiceImpl implements IBizDriverService public List selectBizDriverList(BizDriver bizDriver) { LambdaQueryWrapper queryWrapper = buildQueryWrapper(bizDriver); - return bizDriverMapper.selectList(queryWrapper); + List bizDrivers = bizDriverMapper.selectList(queryWrapper); + for (BizDriver driver : bizDrivers) { + LambdaQueryWrapper queryWrapper1 = new LambdaQueryWrapper<>(); + queryWrapper1.eq(BizDriverClock::getDriverId,driver.getId()); + queryWrapper1.orderByDesc(BizDriverClock::getUpdateTime); + queryWrapper1.last("limit 1"); + List driverClockList = bizDriverClockMapper.selectList(queryWrapper1); + driver.setBizDriverClockList(driverClockList); + } + return bizDrivers; } private LambdaQueryWrapper buildQueryWrapper(BizDriver bizDriver) { diff --git a/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizOrderServiceImpl.java b/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizOrderServiceImpl.java index 05a4913..5c00240 100644 --- a/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizOrderServiceImpl.java +++ b/cpxt-system/src/main/java/com/cpxt/biz/service/impl/BizOrderServiceImpl.java @@ -286,10 +286,12 @@ public class BizOrderServiceImpl implements IBizOrderService { queryWrapper.eq(BizOrder::getArriveLat, bizOrder.getArriveLat()); } if (ObjectUtil.isNotEmpty(bizOrder.getBeginTime())){ - queryWrapper.ge(BizOrder::getCreateTime,bizOrder.getBeginTime()); + String beginTime = bizOrder.getBeginTime() + " 00:00:00"; + queryWrapper.ge(BizOrder::getCreateTime,beginTime); } if (ObjectUtil.isNotEmpty(bizOrder.getEndTime())){ - queryWrapper.le(BizOrder::getCreateTime,bizOrder.getEndTime()); + String endTime = bizOrder.getEndTime() + " 23:59:59"; + queryWrapper.le(BizOrder::getCreateTime,endTime); } queryWrapper.orderByDesc(BizOrder::getCreateTime); queryWrapper.eq(BizOrder::getStatus, 1);