From aa35f53cf74415ee1ece7bc75211ac34ccdad14b Mon Sep 17 00:00:00 2001 From: xiaofajia <1665375861@qq.com> Date: Tue, 8 Oct 2024 18:33:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=B4=E4=BF=AE=E5=B7=A5=E5=8D=95-=E5=AE=A2?= =?UTF-8?q?=E6=88=B7=E3=80=81=E8=BD=A6=E8=BE=86=E4=BF=A1=E6=81=AF=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E3=80=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/admin/CarMainController.java | 14 ++++ .../admin/CustomerMainController.java | 17 ++++ .../admin/CompanyStaffController.java | 4 +- .../staff/service/CompanyStaffService.java | 2 +- .../service/impl/CompanyStaffServiceImpl.java | 11 ++- .../admin/DlRepairTicketsController.java | 15 ++++ .../service/DlRepairTicketsService.java | 10 +++ .../impl/DlRepairTicketsServiceImpl.java | 82 +++++++++++++++++++ .../module/tickets/vo/CustomerAndCarVO.java | 23 ++++++ .../src/main/resources/application-local.yaml | 6 +- 10 files changed, 176 insertions(+), 8 deletions(-) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/vo/CustomerAndCarVO.java diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CarMainController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CarMainController.java index 3a17ac25..dc39d7ee 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CarMainController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CarMainController.java @@ -6,6 +6,7 @@ import cn.iocoder.yudao.module.custom.vo.CarMainReqVO; import cn.iocoder.yudao.module.custom.vo.CarMainRespVO; import cn.iocoder.yudao.module.custom.vo.CustomerMainSaveReqVO; import cn.iocoder.yudao.module.label.service.BusiLabelService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -200,4 +201,17 @@ public class CarMainController { return success(true); } + /** + * 根据车牌查单条记录 + * + * @author 小李 + * @date 11:26 2024/10/8 + * @param carMain 根据车牌查单条记录 + **/ + @PostMapping("/getByLicenseNumber") + @Operation(summary = "根据车牌查单条记录") + public CommonResult getByLicenseNumber(@RequestBody CarMain carMain) { + CarMain one = carMainService.getOne(new LambdaQueryWrapper().eq(CarMain::getLicenseNumber, carMain.getLicenseNumber())); + return success(one); + } } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java index efb20f30..3bba72f7 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CustomerMainController.java @@ -12,6 +12,7 @@ import cn.iocoder.yudao.module.custom.vo.CustomerMainPageReqVO; import cn.iocoder.yudao.module.custom.vo.CustomerMainRespVO; import cn.iocoder.yudao.module.custom.vo.CustomerMainSaveReqVO; import cn.iocoder.yudao.module.label.service.BusiLabelService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; @@ -179,5 +180,21 @@ public class CustomerMainController { return success(true); } + /** + * 根据姓名和电话查询单条记录 + * + * @author 小李 + * @date 11:19 2024/10/8 + * @param customerMain 查询对象 + **/ + @PostMapping("/getByNameAndMobile") + @Operation(summary = "根据姓名和电话查询单条记录") + public CommonResult getByNameAndMobile(@Valid @RequestBody CustomerMain customerMain) { + CustomerMain one = customerMainService.getOne(new LambdaQueryWrapper().and(item -> { + item.eq(CustomerMain::getCusName, customerMain.getCusName()) + .eq(CustomerMain::getPhoneNumber, customerMain.getPhoneNumber()); + })); + return success(one); + } } \ No newline at end of file diff --git a/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/controller/admin/CompanyStaffController.java b/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/controller/admin/CompanyStaffController.java index ad21a54a..ba34acf9 100644 --- a/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/controller/admin/CompanyStaffController.java +++ b/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/controller/admin/CompanyStaffController.java @@ -199,8 +199,8 @@ public class CompanyStaffController { @GetMapping("/list") @Operation(summary = "获取当前登录用户部门下所有员工信息") // @PreAuthorize("@ss.hasPermission('company:staff:query')") - public CommonResult> getStaffList() { - return success(staffService.getStaffList()); + public CommonResult> getStaffList(@RequestParam(value = "query", defaultValue = "", required = false) String query) { + return success(staffService.getStaffList(query)); } /** diff --git a/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/service/CompanyStaffService.java b/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/service/CompanyStaffService.java index 9f194b95..4354da58 100644 --- a/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/service/CompanyStaffService.java +++ b/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/service/CompanyStaffService.java @@ -79,7 +79,7 @@ public interface CompanyStaffService extends IService { * @author 小李 * @date 15:54 2024/8/8 **/ - List getStaffList(); + List getStaffList(String query); /** * 重置员工登录密码 diff --git a/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/service/impl/CompanyStaffServiceImpl.java b/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/service/impl/CompanyStaffServiceImpl.java index 9d3e9845..279499a4 100644 --- a/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/service/impl/CompanyStaffServiceImpl.java +++ b/dl-module-company/src/main/java/cn/iocoder/yudao/module/staff/service/impl/CompanyStaffServiceImpl.java @@ -399,8 +399,15 @@ public class CompanyStaffServiceImpl extends ServiceImpl getStaffList() { - return baseMapper.selectList(new QueryWrapper<>()); + public List getStaffList(String query) { + if (ObjectUtil.isNotEmpty(query)){ + return baseMapper.selectList(new LambdaQueryWrapper() + .like(CompanyStaff::getName,query) + .or() + .like(CompanyStaff::getTel, query) + ); + } + return baseMapper.selectList(new QueryWrapper<>()).stream().limit(20).collect(Collectors.toList()); } /** diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java index 636a34ba..cf88bd70 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java @@ -4,6 +4,7 @@ package cn.iocoder.yudao.module.tickets.controller.admin; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; import cn.iocoder.yudao.module.tickets.service.DlRepairTicketsService; +import cn.iocoder.yudao.module.tickets.vo.CustomerAndCarVO; import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsReqVO; import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -100,5 +101,19 @@ public class DlRepairTicketsController { dlRepairTicketsService.setTicketsPaid(repairTicketsRespVO); return CommonResult.ok(); } + + /** + * 客户信息和车辆信息 新增、修改 + * + * @author 小李 + * @date 9:25 2024/10/8 + * @param customerAndCarVO 用户信息和车辆信息 + **/ + @PostMapping("/updateUserAndCar") + @Operation(summary = "客户信息和车辆信息 新增、修改") + public CommonResult updateCustomerAndCar(@RequestBody CustomerAndCarVO customerAndCarVO){ + dlRepairTicketsService.updateCustomerAndCar(customerAndCarVO); + return CommonResult.ok(); + } } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java index c863452f..e1fd55fd 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.tickets.service; import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; +import cn.iocoder.yudao.module.tickets.vo.CustomerAndCarVO; import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsReqVO; import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -59,4 +60,13 @@ public interface DlRepairTicketsService extends IService { * @param repairTicketsRespVO 工单 **/ void setTicketsPaid(DlRepairTicketsRespVO repairTicketsRespVO); + + /** + * 客户信息和车辆信息 新增、修改 + * + * @author 小李 + * @date 9:25 2024/10/8 + * @param customerAndCarVO 用户信息和车辆信息 + **/ + void updateCustomerAndCar(CustomerAndCarVO customerAndCarVO); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 25a34c2b..5bdc8694 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -7,6 +7,9 @@ import cn.iocoder.yudao.common.RepairErrorCodeConstants; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.module.booking.entity.DlRepairBooking; import cn.iocoder.yudao.module.booking.service.DlRepairBookingService; +import cn.iocoder.yudao.module.custom.entity.CustomerCar; +import cn.iocoder.yudao.module.custom.service.CarMainService; +import cn.iocoder.yudao.module.custom.service.CustomerCarService; import cn.iocoder.yudao.module.custom.service.CustomerMainService; import cn.iocoder.yudao.module.custom.vo.CustomerMainRespVO; import cn.iocoder.yudao.module.order.service.RepairOrderInfoService; @@ -21,11 +24,15 @@ import cn.iocoder.yudao.module.system.api.dept.DeptApi; import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; import cn.iocoder.yudao.module.system.api.dict.DictDataApi; import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO; +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; +import cn.iocoder.yudao.module.system.api.user.dto.UserDTO; import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; import cn.iocoder.yudao.module.tickets.entity.DlRepairTitem; import cn.iocoder.yudao.module.tickets.mapper.DlRepairTicketsMapper; import cn.iocoder.yudao.module.tickets.service.DlRepairTicketsService; import cn.iocoder.yudao.module.tickets.service.DlRepairTitemService; +import cn.iocoder.yudao.module.tickets.vo.CustomerAndCarVO; import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsReqVO; import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; import cn.iocoder.yudao.module.tickets.vo.DlRepairTitemReqVO; @@ -40,6 +47,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.List; +import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; @@ -85,6 +93,22 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl().and(item -> { + item.eq(CustomerCar::getCusId, userId) + .eq(CustomerCar::getCarId, carId); + })); + // 没有就新增 + if (ObjectUtil.isEmpty(one)){ + CustomerCar customerCar = new CustomerCar(); + customerCar.setCusId(userId); + customerCar.setCarId(carId); + customerCarService.saveOrUpdate(customerCar); + } + } + } } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/vo/CustomerAndCarVO.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/vo/CustomerAndCarVO.java new file mode 100644 index 00000000..010cce5a --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/vo/CustomerAndCarVO.java @@ -0,0 +1,23 @@ +package cn.iocoder.yudao.module.tickets.vo; + +import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO; +import cn.iocoder.yudao.module.custom.entity.CarMain; +import cn.iocoder.yudao.module.custom.entity.CustomerMain; +import cn.iocoder.yudao.module.custom.vo.CarMainReqVO; +import lombok.Data; + +/** + * 用于新增、修改客户信息和车辆信息 + * + * @author 小李 + * @date 9:22 2024/10/8 +**/ +@Data +public class CustomerAndCarVO extends TenantBaseDO { + + /** 用户信息 */ + private CustomerMain userInfo; + + /** 车辆信息 */ + private CarMainReqVO carInfo; +} diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml index 776f9170..1571d693 100644 --- a/yudao-server/src/main/resources/application-local.yaml +++ b/yudao-server/src/main/resources/application-local.yaml @@ -46,7 +46,7 @@ spring: primary: master datasource: master: - url: jdbc:mysql://122.51.230.86:3306/lanan_platform?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 + url: jdbc:mysql://122.51.230.86:3306/lanan_platform_dev?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例 # url: jdbc:mysql://127.0.0.1:3306/ruoyi-vue-pro?useSSL=true&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai # MySQL Connector/J 5.X 连接的示例 # url: jdbc:postgresql://127.0.0.1:5432/ruoyi-vue-pro # PostgreSQL 连接的示例 # url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例 @@ -54,8 +54,8 @@ spring: # url: jdbc:dm://127.0.0.1:5236?schema=RUOYI_VUE_PRO # DM 连接的示例 # url: jdbc:kingbase8://127.0.0.1:54321/test # 人大金仓 KingbaseES 连接的示例 # url: jdbc:postgresql://127.0.0.1:5432/postgres # OpenGauss 连接的示例 - username: lanan - password: 123456 + username: lanan_dev + password: lighting@2024 # username: sa # SQL Server 连接的示例 # password: Yudao@2024 # SQL Server 连接的示例 # username: SYSDBA # DM 连接的示例