From 8e2586a0e5f2412c1bf8bc6f7a31b184ca9278ce Mon Sep 17 00:00:00 2001 From: PQZ Date: Wed, 14 Aug 2024 16:25:30 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=BD=A6=E8=BE=86=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/admin/CarMainController.java | 23 ++++++++++-- .../module/custom/mapper/CarMainMapper.java | 12 ++++++- .../module/custom/service/CarMainService.java | 9 +++++ .../service/impl/CarMainServiceImpl.java | 14 ++++++++ .../yudao/module/custom/vo/CarMainReqVO.java | 4 +++ .../yudao/module/custom/vo/CarMainRespVO.java | 15 +++++--- .../resources/mapper/custom/CarMainMapper.xml | 35 +++++++++++++++++++ 7 files changed, 103 insertions(+), 9 deletions(-) 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 d6ce57a8..3a17ac25 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 @@ -120,14 +120,30 @@ public class CarMainController { return success(pageResult); } + /** + * 保险/年检/保养提醒列表 + * + * @param pageReqVO CarMainReqVO(入参) + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult> + * @author PQZ + * @date 11:01 2024/8/14 + **/ + @GetMapping("/remindCarMainPage") + @Operation(summary = "获得车辆信息分页") + public CommonResult> remindCarMainPage(CarMainReqVO pageReqVO) { + IPage pageResult = carMainService.remindCarMainPage(pageReqVO); + return success(pageResult); + } + /** * 测算车辆下一次保养/检测/保险时间 - * @author PQZ - * @date 11:48 2024/8/13 + * * @param pageReqVO CarMainReqVO * @return cn.iocoder.yudao.framework.common.pojo.CommonResult - **/ + * @author PQZ + * @date 11:48 2024/8/13 + **/ @PostMapping("/compute") @Operation(summary = "测算车辆下一次保养/检测/保险时间") public CommonResult compute(@RequestBody CarMainReqVO pageReqVO) { @@ -135,6 +151,7 @@ public class CarMainController { return success(result); } + /** * 导出车辆信息 * diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/mapper/CarMainMapper.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/mapper/CarMainMapper.java index f4223db8..088c12ff 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/mapper/CarMainMapper.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/mapper/CarMainMapper.java @@ -29,6 +29,17 @@ public interface CarMainMapper extends BaseMapper { */ IPage findPage(Page page, @Param("dto") CarMainReqVO pageReqVO); + /** + * 保险/年检/保养提醒列表 + * + * @param page Page + * @param pageReqVO CarMainReqVO + * @return com.baomidou.mybatisplus.core.metadata.IPage + * @author PQZ + * @date 9:12 2024/8/14 + **/ + IPage remindCarMainPage(Page page, @Param("entity") CarMainReqVO pageReqVO); + /** * 获得车辆信息分页 * @@ -38,7 +49,6 @@ public interface CarMainMapper extends BaseMapper { CarMainRespVO findOne(@Param("id") String id); - /** * 车牌号,车架号,发动机号码 查重 * diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CarMainService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CarMainService.java index bfed4318..42ade09f 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CarMainService.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/CarMainService.java @@ -60,6 +60,15 @@ public interface CarMainService extends IService { */ IPage getCarMainPage(CarMainReqVO pageReqVO); + /** + * 保险/年检/保养提醒列表 + * @author PQZ + * @date 9:08 2024/8/14 + * @param pageReqVO 查询条件 + * @return com.baomidou.mybatisplus.core.metadata.IPage + **/ + IPage remindCarMainPage(CarMainReqVO pageReqVO); + /** * 绑定车辆信息 diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CarMainServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CarMainServiceImpl.java index e1c95b42..765acafe 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CarMainServiceImpl.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/CarMainServiceImpl.java @@ -190,6 +190,20 @@ public class CarMainServiceImpl extends ServiceImpl impl return baseMapper.findPage(page, pageReqVO); } + /** + * 保险/年检/保养提醒列表 + * + * @param pageReqVO 查询条件 + * @return com.baomidou.mybatisplus.core.metadata.IPage + * @author PQZ + * @date 9:08 2024/8/14 + **/ + @Override + public IPage remindCarMainPage(CarMainReqVO pageReqVO) { + Page page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize()); + return baseMapper.remindCarMainPage(page,pageReqVO); + } + /** * 绑定客户信息 * diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainReqVO.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainReqVO.java index cc30d480..96bfd65e 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainReqVO.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainReqVO.java @@ -41,4 +41,8 @@ public class CarMainReqVO extends CarMain { List labelList; /**车辆品牌型号数组*/ List brandAndModel; + /**客户名称*/ + String cusName; + /**查询标识(01:年检临期;02:保养临期;03:保险临期)*/ + String selectSign; } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java index 6f9e3ff0..535a4951 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java @@ -17,9 +17,6 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_ @ExcelIgnoreUnannotated public class CarMainRespVO extends CarMain { - - - /**是否车主(0否1是)*/ @Schema(description = "是否车主(0否1是)") private String isOwner; @@ -33,8 +30,16 @@ public class CarMainRespVO extends CarMain { String brandStr; /**型号字符*/ String modelStr; - - + /**客户名称*/ + String cusName; + /**电话号码*/ + String phoneNumber; + /**年检剩余*/ + String njCont; + /**保险剩余*/ + String byCont; + /**保险剩余*/ + String bxCont; /**车辆品牌型号数组*/ List brandAndModel; diff --git a/dl-module-base/src/main/resources/mapper/custom/CarMainMapper.xml b/dl-module-base/src/main/resources/mapper/custom/CarMainMapper.xml index 708155b5..b70414c2 100644 --- a/dl-module-base/src/main/resources/mapper/custom/CarMainMapper.xml +++ b/dl-module-base/src/main/resources/mapper/custom/CarMainMapper.xml @@ -109,5 +109,40 @@ + \ No newline at end of file From b2fd1b596ad18326bad5380ef0c25cbb5b573ecd Mon Sep 17 00:00:00 2001 From: PQZ Date: Wed, 14 Aug 2024 17:48:36 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java index 535a4951..78d47c56 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/vo/CarMainRespVO.java @@ -42,8 +42,4 @@ public class CarMainRespVO extends CarMain { String bxCont; /**车辆品牌型号数组*/ List brandAndModel; - - - - } \ No newline at end of file From 1b42f4e3ade02fd908725da5cdf3c496fc3125b7 Mon Sep 17 00:00:00 2001 From: Vinjor Date: Wed, 14 Aug 2024 17:50:49 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E8=B5=84=E4=BA=A7=E5=AD=98=E6=94=BE?= =?UTF-8?q?=E4=BD=8D=E7=BD=AE=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/PropertyPosController.java | 13 +++++++++++ .../core/handler/DefaultDBFieldHandler.java | 22 ++++++++++++------- .../system/service/dept/DeptService.java | 10 ++++++++- .../system/service/dept/DeptServiceImpl.java | 18 +++++++++++++++ .../service/tenant/TenantServiceImpl.java | 13 ++++++----- .../src/main/resources/application-local.yaml | 1 + 6 files changed, 62 insertions(+), 15 deletions(-) diff --git a/dl-module-company/src/main/java/cn/iocoder/yudao/module/property/controller/admin/PropertyPosController.java b/dl-module-company/src/main/java/cn/iocoder/yudao/module/property/controller/admin/PropertyPosController.java index c61a9d15..9e2c77b2 100644 --- a/dl-module-company/src/main/java/cn/iocoder/yudao/module/property/controller/admin/PropertyPosController.java +++ b/dl-module-company/src/main/java/cn/iocoder/yudao/module/property/controller/admin/PropertyPosController.java @@ -80,4 +80,17 @@ public class PropertyPosController { return success(propertyPosService.getPropertyPosPage( page,pageReqVO)); } + /** + * 资产存放位置列表 --下拉选择使用 + * @author vinjor-M + * @date 17:37 2024/8/14 + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult> + **/ + @GetMapping("/list") + @Operation(summary = "获得企业管理-资产存放位置列表") + @PreAuthorize("@ss.hasPermission('company:property-pos:query')") + public CommonResult> getPropertyPosList() { + return success(propertyPosService.list()); + } + } \ No newline at end of file diff --git a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/handler/DefaultDBFieldHandler.java b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/handler/DefaultDBFieldHandler.java index 94dada12..a2fce4bc 100644 --- a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/handler/DefaultDBFieldHandler.java +++ b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/handler/DefaultDBFieldHandler.java @@ -47,15 +47,21 @@ public class DefaultDBFieldHandler implements MetaObjectHandler { @Override public void updateFill(MetaObject metaObject) { // 更新时间为空,则以当前时间为更新时间 - Object modifyTime = getFieldValByName("updateTime", metaObject); - if (Objects.isNull(modifyTime)) { - setFieldValByName("updateTime", LocalDateTime.now(), metaObject); - } - - // 当前登录用户不为空,更新人为空,则当前登录用户为更新人 - Object modifier = getFieldValByName("updater", metaObject); +// Object modifyTime = getFieldValByName("updateTime", metaObject); +// if (Objects.isNull(modifyTime)) { +// setFieldValByName("updateTime", LocalDateTime.now(), metaObject); +// } +// +// // 当前登录用户不为空,更新人为空,则当前登录用户为更新人 +// Object modifier = getFieldValByName("updater", metaObject); +// Long userId = WebFrameworkUtils.getLoginUserId(); +// if (Objects.nonNull(userId) && Objects.isNull(modifier)) { +// setFieldValByName("updater", userId.toString(), metaObject); +// } + //更新数据时,强制更新数据的更新时间和更新人 + setFieldValByName("updateTime", LocalDateTime.now(), metaObject); Long userId = WebFrameworkUtils.getLoginUserId(); - if (Objects.nonNull(userId) && Objects.isNull(modifier)) { + if (Objects.nonNull(userId)) { setFieldValByName("updater", userId.toString(), metaObject); } } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java index ffd396c7..70076b27 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java @@ -18,13 +18,21 @@ import java.util.Set; public interface DeptService { /** - * 创建部门 + * 创建部门--走校验 * * @param createReqVO 部门信息 * @return 部门编号 */ Long createDept(DeptSaveReqVO createReqVO); + /** + * 创建部门--不走校验 + * + * @param createReqVO 部门信息 + * @return 部门编号 + */ + Long createDeptNoVerify(DeptSaveReqVO createReqVO); + /** * 更新部门 * diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceImpl.java index 4463f754..b894a796 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceImpl.java @@ -50,6 +50,7 @@ public class DeptServiceImpl implements DeptService { createReqVO.setAncestors(validateParentDept(null, createReqVO.getParentId())); // 校验部门名的唯一性 validateDeptNameUnique(null, createReqVO.getParentId(), createReqVO.getName()); + // 设置所属企业ID if(StringUtils.isEmpty(createReqVO.getCorpId()) && !DeptDO.PARENT_ID_ROOT.equals(createReqVO.getParentId())){ //没有传企业ID,且不是最顶级部门,自动取上一节点的企业ID(如果有的话) DeptDO parentDept = this.getDept(createReqVO.getParentId()); @@ -63,6 +64,23 @@ public class DeptServiceImpl implements DeptService { return dept.getId(); } + /** + * 创建部门--不走校验 + * + * @param createReqVO 部门信息 + * @return 部门编号 + */ + @Override + public Long createDeptNoVerify(DeptSaveReqVO createReqVO) { + if (createReqVO.getParentId() == null) { + createReqVO.setParentId(DeptDO.PARENT_ID_ROOT); + } + // 插入部门 + DeptDO dept = BeanUtils.toBean(createReqVO, DeptDO.class); + deptMapper.insert(dept); + return dept.getId(); + } + @Override @CacheEvict(cacheNames = RedisKeyConstants.DEPT_CHILDREN_ID_LIST, allEntries = true) // allEntries 清空所有缓存,因为操作一个部门,涉及到多个缓存 diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/tenant/TenantServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/tenant/TenantServiceImpl.java index 3ca1c97f..ae61d9b4 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/tenant/TenantServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/tenant/TenantServiceImpl.java @@ -132,11 +132,11 @@ public class TenantServiceImpl implements TenantService { // 修改租户的管理员 tenantMapper.updateById(new TenantDO().setId(tenant.getId()).setContactUserId(userId)); //创建租户顶级部门 - Long deptId = createDept(userId,createReqVO.getName(),createReqVO.getContactMobile(),null); + Long deptId = createDept(userId,createReqVO.getName(),createReqVO.getContactMobile(),null,"0"); //创建三个客户部门:私人客户、代办客户、政企客户 - createDept(null,PRIVATE_CUS.getName(),null,deptId); - createDept(null,AGENT_CUS.getName(),null,deptId); - createDept(null,GOV_CUS.getName(),null,deptId); + createDept(null,PRIVATE_CUS.getName(),null,deptId,"0,"+deptId); + createDept(null,AGENT_CUS.getName(),null,deptId,"0,"+deptId); + createDept(null,GOV_CUS.getName(),null,deptId,"0,"+deptId); //拉取本租户配置的服务套餐对应的角色和权限,存入本租户对应信息 createServiceRole(createReqVO.getPackageId()); }); @@ -163,10 +163,11 @@ public class TenantServiceImpl implements TenantService { } } - private Long createDept(Long userId,String deptName,String phone,Long parentId){ + private Long createDept(Long userId,String deptName,String phone,Long parentId,String ancestors){ DeptSaveReqVO deptSaveReqVO = new DeptSaveReqVO(); deptSaveReqVO.setName(deptName); deptSaveReqVO.setSort(0); + deptSaveReqVO.setAncestors(ancestors); deptSaveReqVO.setStatus(CommonStatusEnum.ENABLE.getStatus()); if(null!=phone){ deptSaveReqVO.setPhone(phone); @@ -177,7 +178,7 @@ public class TenantServiceImpl implements TenantService { if(null!=parentId){ deptSaveReqVO.setParentId(parentId); } - return deptService.createDept(deptSaveReqVO); + return deptService.createDeptNoVerify(deptSaveReqVO); } private Long createUser(Long roleId, TenantSaveReqVO createReqVO) { diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml index 206fd83b..c42fd801 100644 --- a/yudao-server/src/main/resources/application-local.yaml +++ b/yudao-server/src/main/resources/application-local.yaml @@ -178,6 +178,7 @@ logging: cn.iocoder.yudao.module.custom.mapper: debug # cn.iocoder.yudao.module.company.mapper: debug # cn.iocoder.yudao.module.staff.mapper: debug # + cn.iocoder.yudao.module.property.mapper: debug # debug: false