diff --git a/dk-api/api-bom/pom.xml b/dk-api/api-bom/pom.xml index 48b3482..e989a65 100644 --- a/dk-api/api-bom/pom.xml +++ b/dk-api/api-bom/pom.xml @@ -11,7 +11,7 @@ ${revision} - ruoyi-api-bom api依赖项 + api-bom api依赖项 diff --git a/dk-api/api-workflow/pom.xml b/dk-api/api-workflow/pom.xml index bacfc80..9a22a63 100644 --- a/dk-api/api-workflow/pom.xml +++ b/dk-api/api-workflow/pom.xml @@ -12,7 +12,7 @@ api-workflow - ruoyi-api-workflow 工作流接口模块 + api-workflow 工作流接口模块 diff --git a/dk-auth/pom.xml b/dk-auth/pom.xml index 0e62e3b..9a64994 100644 --- a/dk-auth/pom.xml +++ b/dk-auth/pom.xml @@ -11,7 +11,7 @@ dk-auth - ruoyi-auth 认证授权中心 + auth 认证授权中心 diff --git a/dk-auth/src/main/java/org/dromara/auth/DKAuthApplication.java b/dk-auth/src/main/java/org/dromara/auth/DKAuthApplication.java index a4498dd..82b1bc5 100644 --- a/dk-auth/src/main/java/org/dromara/auth/DKAuthApplication.java +++ b/dk-auth/src/main/java/org/dromara/auth/DKAuthApplication.java @@ -13,7 +13,7 @@ import org.springframework.boot.context.metrics.buffering.BufferingApplicationSt */ @EnableDubbo @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) -public class DKAuthApplication { +public class DKAuthApplication { public static void main(String[] args) { SpringApplication application = new SpringApplication(DKAuthApplication.class); application.setApplicationStartup(new BufferingApplicationStartup(2048)); diff --git a/dk-auth/src/main/java/org/dromara/auth/controller/TokenController.java b/dk-auth/src/main/java/org/dromara/auth/controller/TokenController.java index 8de1974..5ce3c0d 100644 --- a/dk-auth/src/main/java/org/dromara/auth/controller/TokenController.java +++ b/dk-auth/src/main/java/org/dromara/auth/controller/TokenController.java @@ -102,7 +102,7 @@ public class TokenController { Long userId = LoginHelper.getUserId(); scheduledExecutorService.schedule(() -> { - remoteMessageService.publishMessage(userId, "欢迎登录RuoYi-Cloud-Plus微服务管理系统"); + remoteMessageService.publishMessage(userId, "欢迎登录低空产业平台管理系统"); }, 3, TimeUnit.SECONDS); return R.ok(loginVo); } diff --git a/dk-common/common-dubbo/pom.xml b/dk-common/common-dubbo/pom.xml index 542ce15..09584bc 100644 --- a/dk-common/common-dubbo/pom.xml +++ b/dk-common/common-dubbo/pom.xml @@ -12,7 +12,7 @@ common-dubbo - ruoyi-common-dubbo RPC服务 + common-dubbo RPC服务 diff --git a/dk-common/common-encrypt/pom.xml b/dk-common/common-encrypt/pom.xml index a7f77ef..e10d828 100644 --- a/dk-common/common-encrypt/pom.xml +++ b/dk-common/common-encrypt/pom.xml @@ -12,7 +12,7 @@ common-encrypt - ruoyi-common-encrypt 数据加解密模块 + common-encrypt 数据加解密模块 diff --git a/dk-common/common-idempotent/pom.xml b/dk-common/common-idempotent/pom.xml index 6e3df1b..3f92b6c 100644 --- a/dk-common/common-idempotent/pom.xml +++ b/dk-common/common-idempotent/pom.xml @@ -12,7 +12,7 @@ common-idempotent - ruoyi-common-idempotent 幂等功能 + common-idempotent 幂等功能 diff --git a/dk-common/common-seata/pom.xml b/dk-common/common-seata/pom.xml index 067e90a..458bd87 100644 --- a/dk-common/common-seata/pom.xml +++ b/dk-common/common-seata/pom.xml @@ -12,7 +12,7 @@ common-seata - ruoyi-common-seata 分布式事务 + common-seata 分布式事务 diff --git a/dk-common/common-security/pom.xml b/dk-common/common-security/pom.xml index d5e5bb7..22c31e2 100644 --- a/dk-common/common-security/pom.xml +++ b/dk-common/common-security/pom.xml @@ -12,7 +12,7 @@ common-security - ruoyi-common-security 安全模块 + common-security 安全模块 diff --git a/dk-common/common-sensitive/pom.xml b/dk-common/common-sensitive/pom.xml index 257232e..93daae8 100644 --- a/dk-common/common-sensitive/pom.xml +++ b/dk-common/common-sensitive/pom.xml @@ -12,7 +12,7 @@ common-sensitive - ruoyi-common-sensitive 脱敏模块 + common-sensitive 脱敏模块 diff --git a/dk-common/common-sentinel/pom.xml b/dk-common/common-sentinel/pom.xml index ef5f792..8056341 100644 --- a/dk-common/common-sentinel/pom.xml +++ b/dk-common/common-sentinel/pom.xml @@ -11,7 +11,7 @@ common-sentinel - ruoyi-common-sentinel 限流模块 + common-sentinel 限流模块 diff --git a/dk-common/common-tenant/pom.xml b/dk-common/common-tenant/pom.xml index 7a457ad..73ab2e9 100644 --- a/dk-common/common-tenant/pom.xml +++ b/dk-common/common-tenant/pom.xml @@ -12,7 +12,7 @@ common-tenant - ruoyi-common-tenant 租户模块 + common-tenant 租户模块 diff --git a/dk-common/common-translation/pom.xml b/dk-common/common-translation/pom.xml index 5edf104..31d3caa 100644 --- a/dk-common/common-translation/pom.xml +++ b/dk-common/common-translation/pom.xml @@ -12,7 +12,7 @@ common-translation - ruoyi-common-translation 通用翻译功能 + common-translation 通用翻译功能 diff --git a/dk-modules/business/pom.xml b/dk-modules/business/pom.xml index 00a3349..3d16372 100644 --- a/dk-modules/business/pom.xml +++ b/dk-modules/business/pom.xml @@ -6,7 +6,7 @@ org.dromara dk-modules - 2.2.2 + ${revision} business @@ -91,19 +91,7 @@ common-encrypt - - - org.dromara - api-system - - - - org.dromara - api-resource - - - ${project.artifactId} @@ -122,4 +110,5 @@ + diff --git a/dk-modules/business/src/main/java/org/dromara/business/BusinessApplication.java b/dk-modules/business/src/main/java/org/dromara/business/BusinessApplication.java index ba5d62d..f40808f 100644 --- a/dk-modules/business/src/main/java/org/dromara/business/BusinessApplication.java +++ b/dk-modules/business/src/main/java/org/dromara/business/BusinessApplication.java @@ -11,7 +11,7 @@ import org.springframework.boot.context.metrics.buffering.BufferingApplicationSt * @data 2025/2/25 */ @EnableDubbo -@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) +@SpringBootApplication() public class BusinessApplication { public static void main(String[] args) { SpringApplication application = new SpringApplication(BusinessApplication.class); diff --git a/dk-modules/business/src/main/java/org/dromara/business/controller/BusinessOperationController.java b/dk-modules/business/src/main/java/org/dromara/business/controller/BusinessOperationController.java new file mode 100644 index 0000000..c8cad86 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/controller/BusinessOperationController.java @@ -0,0 +1,109 @@ +package org.dromara.business.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.dromara.business.domain.bo.BusinessOperationBo; +import org.dromara.business.domain.vo.BusinessOperationVo; +import org.dromara.business.service.IBusinessOperationService; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.core.domain.R; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 运营中心-工单处理 + * 前端访问路由地址为:/system/operation + * + * @author LionLi + * @date 2025-02-26 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/operation") +public class BusinessOperationController extends BaseController { + + private final IBusinessOperationService businessOperationService; + + /** + * 查询运营中心-工单处理列表 + */ + @SaCheckPermission("system:operation:list") + @GetMapping("/list") + public TableDataInfo list(BusinessOperationBo bo, PageQuery pageQuery) { + return businessOperationService.queryPageList(bo, pageQuery); + } + + /** + * 导出运营中心-工单处理列表 + */ + @SaCheckPermission("system:operation:export") + @Log(title = "运营中心-工单处理", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(BusinessOperationBo bo, HttpServletResponse response) { + List list = businessOperationService.queryList(bo); + ExcelUtil.exportExcel(list, "运营中心-工单处理", BusinessOperationVo.class, response); + } + + /** + * 获取运营中心-工单处理详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("system:operation:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(businessOperationService.queryById(id)); + } + + /** + * 新增运营中心-工单处理 + */ + @SaCheckPermission("system:operation:add") + @Log(title = "运营中心-工单处理", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody BusinessOperationBo bo) { + //根据工单绘制上传航线,绑定航线,填报信息 + + + return toAjax(businessOperationService.insertByBo(bo)); + } + + /** + * 修改运营中心-工单处理 + */ + @SaCheckPermission("system:operation:edit") + @Log(title = "运营中心-工单处理", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody BusinessOperationBo bo) { + return toAjax(businessOperationService.updateByBo(bo)); + } + + /** + * 删除运营中心-工单处理 + * + * @param ids 主键串 + */ + @SaCheckPermission("system:operation:remove") + @Log(title = "运营中心-工单处理", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(businessOperationService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/controller/BusinessTaskController.java b/dk-modules/business/src/main/java/org/dromara/business/controller/BusinessTaskController.java new file mode 100644 index 0000000..4e9bc43 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/controller/BusinessTaskController.java @@ -0,0 +1,107 @@ +package org.dromara.business.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.dromara.business.domain.bo.BusinessTaskBo; +import org.dromara.business.domain.vo.BusinessTaskVo; +import org.dromara.business.service.IBusinessTaskService; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.core.domain.R; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; + +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 工单预约 + * 前端访问路由地址为:/system/task + * + * @author LionLi + * @date 2025-02-26 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/task") +public class BusinessTaskController extends BaseController { + + private final IBusinessTaskService businessTaskService; + + /** + * 查询工单预约列表 + */ + @SaCheckPermission("system:task:list") + @GetMapping("/list") + public TableDataInfo list(BusinessTaskBo bo, PageQuery pageQuery) { + return businessTaskService.queryPageList(bo, pageQuery); + } + + /** + * 导出工单预约列表 + */ + @SaCheckPermission("system:task:export") + @Log(title = "工单预约", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(BusinessTaskBo bo, HttpServletResponse response) { + List list = businessTaskService.queryList(bo); + ExcelUtil.exportExcel(list, "工单预约", BusinessTaskVo.class, response); + } + + /** + * 获取工单预约详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("system:task:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(businessTaskService.queryById(id)); + } + + /** + * 新增工单预约 + */ + @SaCheckPermission("system:task:add") + @Log(title = "工单预约", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody BusinessTaskBo bo) { + return toAjax(businessTaskService.insertByBo(bo)); + } + + /** + * 修改工单预约 + */ + @SaCheckPermission("system:task:edit") + @Log(title = "工单预约", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody BusinessTaskBo bo) { + return toAjax(businessTaskService.updateByBo(bo)); + } + + /** + * 删除工单预约 + * + * @param ids 主键串 + */ + @SaCheckPermission("system:task:remove") + @Log(title = "工单预约", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(businessTaskService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/domain/BusinessOperation.java b/dk-modules/business/src/main/java/org/dromara/business/domain/BusinessOperation.java new file mode 100644 index 0000000..758ef1f --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/domain/BusinessOperation.java @@ -0,0 +1,65 @@ +package org.dromara.business.domain; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import java.io.Serial; +import java.util.Date; +/** + * @auther yq + * @data 2025/2/26 + */ + +@Data + +@TableName("business_operation") +public class BusinessOperation { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * + */ + @TableId(value = "id") + private Long id; + + /** + * 工单id + */ + private Long taskId; + + /** + * 处理人id + */ + private Long userId; + + /** + * 处理人昵称 + */ + private String nickName; + + /** + * 工单状态(0预约中 1 等待中,2执行中 3 未完成 4已完结 ) + */ + private String taskStatus; + + /** + * 飞行时间 + */ + private Date flightTime; + + /** + * 说明 + */ + private String explain; + + /** + * 设备sn + */ + private String deviceSn; + + +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/domain/BusinessTask.java b/dk-modules/business/src/main/java/org/dromara/business/domain/BusinessTask.java new file mode 100644 index 0000000..8b3498b --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/domain/BusinessTask.java @@ -0,0 +1,59 @@ +package org.dromara.business.domain; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.dromara.common.mybatis.core.domain.BaseEntity; + +import java.io.Serial; +import java.math.BigDecimal; +import java.util.Date; + +/** + * @auther yq + * @data 2025/2/26 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("business_task") +public class BusinessTask extends BaseEntity { + @Serial + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(value = "id") + private Long id; + + private BigDecimal lng; + + private BigDecimal lat; + + /** + * 期望完成时间 + */ + @TableField(fill = FieldFill.INSERT) + private Date expectTime; + + /** + * 任务描述 + * */ + private String explain; + /** + * 完成时间 + * */ + @TableField(fill = FieldFill.UPDATE) + private Date completeTime; + /** + *工单类型(0:拍照 1:喊话) + * */ + private String taskType; + /** + * 工单状态(0预约中 1 等待中,2执行中 3 未完成 4已完结 ) + * */ + private String status; +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/domain/bo/BusinessOperationBo.java b/dk-modules/business/src/main/java/org/dromara/business/domain/bo/BusinessOperationBo.java new file mode 100644 index 0000000..dbc5625 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/domain/bo/BusinessOperationBo.java @@ -0,0 +1,81 @@ +package org.dromara.business.domain.bo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonInclude; +import org.dromara.business.domain.BusinessOperation; + +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +/** + * 运营中心-工单处理业务对象 business_operation + * + * @author LionLi + * @date 2025-02-26 + */ +@Data +@EqualsAndHashCode() +@AutoMapper(target = BusinessOperation.class, reverseConvertGenerate = false) +public class BusinessOperationBo { + + /** + * + */ + private Long id; + + /** + * 工单id + */ + @NotNull(message = "工单id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long taskId; + + /** + * 处理人id + */ + + private Long userId; + + /** + * 处理人昵称 + */ + + private String nickName; + + /** + * 工单状态(0预约中 1 等待中,2执行中 3 未完成 4已完结 ) + */ + + private String taskStatus; + + /** + * 飞行时间 + */ + @NotNull(message = "飞行时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date flightTime; + + /** + * 说明 + */ + private String explain; + + /** + * 设备sn + */ + @NotBlank(message = "设备sn不能为空", groups = { AddGroup.class, EditGroup.class }) + private String deviceSn; + + /** + * 请求参数 + */ + @JsonInclude(JsonInclude.Include.NON_EMPTY) + private Map params = new HashMap<>(); + + private String fileId; +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/domain/bo/BusinessTaskBo.java b/dk-modules/business/src/main/java/org/dromara/business/domain/bo/BusinessTaskBo.java new file mode 100644 index 0000000..a35f6ad --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/domain/bo/BusinessTaskBo.java @@ -0,0 +1,74 @@ +package org.dromara.business.domain.bo; + + +import org.dromara.business.domain.BusinessTask; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; +import java.util.Date; + +/** + * 工单预约业务对象 business_task + * + * @author LionLi + * @date 2025-02-26 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = BusinessTask.class, reverseConvertGenerate = false) +public class BusinessTaskBo extends BaseEntity { + + /** + * + */ + @NotNull(message = "不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * + */ + @NotNull(message = "不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long lng; + + /** + * + */ + @NotNull(message = "不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long lat; + + /** + * 工单类型(0:拍照 1:喊话) + */ + @NotBlank(message = "工单类型(0:拍照 1:喊话)不能为空", groups = { AddGroup.class, EditGroup.class }) + private String taskType; + + /** + * 期望完成时间 + */ + @NotNull(message = "期望完成时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date expectTime; + + /** + * 说明 + */ + @NotBlank(message = "说明不能为空", groups = { AddGroup.class, EditGroup.class }) + private String explain; + + /** + * 完成时间 + */ + + private Date completeTime; + + /** + * 工单状态(0预约中 1 等待中,2执行中 3 未完成 4已完结 ) + */ + + private String status; + + +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/domain/vo/BusinessOperationVo.java b/dk-modules/business/src/main/java/org/dromara/business/domain/vo/BusinessOperationVo.java new file mode 100644 index 0000000..0738e38 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/domain/vo/BusinessOperationVo.java @@ -0,0 +1,81 @@ +package org.dromara.business.domain.vo; + +import java.util.Date; + +import org.dromara.business.domain.BusinessOperation; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; + + +/** + * 运营中心-工单处理视图对象 business_operation + * + * @author LionLi + * @date 2025-02-26 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = BusinessOperation.class) +public class BusinessOperationVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private Long id; + + /** + * 工单id + */ + @ExcelProperty(value = "工单id") + private Long taskId; + + /** + * 处理人id + */ + @ExcelProperty(value = "处理人id") + private Long userId; + + /** + * 处理人昵称 + */ + @ExcelProperty(value = "处理人昵称") + private String nickName; + + /** + * 工单状态(0预约中 1 等待中,2执行中 3 未完成 4已完结 ) + */ + @ExcelProperty(value = "工单状态", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "0=预约中,1=,等待中,2执行中,3=,未完成,4=已完结") + private String taskStatus; + + /** + * 飞行时间 + */ + @ExcelProperty(value = "飞行时间") + private Date flightTime; + + /** + * 说明 + */ + @ExcelProperty(value = "说明") + private String explain; + + /** + * 设备sn + */ + @ExcelProperty(value = "设备sn") + private String deviceSn; + + +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/domain/vo/BusinessTaskVo.java b/dk-modules/business/src/main/java/org/dromara/business/domain/vo/BusinessTaskVo.java new file mode 100644 index 0000000..8636030 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/domain/vo/BusinessTaskVo.java @@ -0,0 +1,85 @@ +package org.dromara.business.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.business.domain.BusinessTask; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 工单预约视图对象 business_task + * + * @author LionLi + * @date 2025-02-26 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = BusinessTask.class) +public class BusinessTaskVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private Long id; + + /** + * + */ + @ExcelProperty(value = "") + private Long lng; + + /** + * + */ + @ExcelProperty(value = "") + private Long lat; + + /** + * 工单类型(0:拍照 1:喊话) + */ + @ExcelProperty(value = "工单类型", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "0=:拍照,1=:喊话") + private String taskType; + + /** + * 期望完成时间 + */ + @ExcelProperty(value = "期望完成时间") + private Date expectTime; + + /** + * 说明 + */ + @ExcelProperty(value = "说明") + private String explain; + + /** + * 完成时间 + */ + @ExcelProperty(value = "完成时间") + private Date completeTime; + + /** + * 工单状态(0预约中 1 等待中,2执行中 3 未完成 4已完结 ) + */ + @ExcelProperty(value = "工单状态", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "0=预约中,1=,等=待中,2执行中,3=,未=完成,4=已完结") + private String status; + + +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessOperationMapper.java b/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessOperationMapper.java new file mode 100644 index 0000000..39f48f4 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessOperationMapper.java @@ -0,0 +1,16 @@ +package org.dromara.business.mapper; + + +import org.dromara.business.domain.BusinessOperation; +import org.dromara.business.domain.vo.BusinessOperationVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 运营中心-工单处理Mapper接口 + * + * @author LionLi + * @date 2025-02-26 + */ +public interface BusinessOperationMapper extends BaseMapperPlus { + +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessTaskMapper.java b/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessTaskMapper.java new file mode 100644 index 0000000..5275417 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/mapper/BusinessTaskMapper.java @@ -0,0 +1,18 @@ +package org.dromara.business.mapper; + + +import org.dromara.business.domain.BusinessTask; +import org.dromara.business.domain.vo.BusinessTaskVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 工单预约Mapper接口 + * + * @author LionLi + * @date 2025-02-26 + */ +public interface BusinessTaskMapper extends BaseMapperPlus { + + + int distance(); +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessOperationService.java b/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessOperationService.java new file mode 100644 index 0000000..981bf0c --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessOperationService.java @@ -0,0 +1,68 @@ +package org.dromara.business.service; + + +import org.dromara.business.domain.bo.BusinessOperationBo; +import org.dromara.business.domain.vo.BusinessOperationVo; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import java.util.Collection; +import java.util.List; + +/** + * 运营中心-工单处理Service接口 + * + * @author LionLi + * @date 2025-02-26 + */ +public interface IBusinessOperationService { + + /** + * 查询运营中心-工单处理 + * + * @param id 主键 + * @return 运营中心-工单处理 + */ + BusinessOperationVo queryById(Long id); + + /** + * 分页查询运营中心-工单处理列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 运营中心-工单处理分页列表 + */ + TableDataInfo queryPageList(BusinessOperationBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的运营中心-工单处理列表 + * + * @param bo 查询条件 + * @return 运营中心-工单处理列表 + */ + List queryList(BusinessOperationBo bo); + + /** + * 新增运营中心-工单处理 + * + * @param bo 运营中心-工单处理 + * @return 是否新增成功 + */ + Boolean insertByBo(BusinessOperationBo bo); + + /** + * 修改运营中心-工单处理 + * + * @param bo 运营中心-工单处理 + * @return 是否修改成功 + */ + Boolean updateByBo(BusinessOperationBo bo); + + /** + * 校验并批量删除运营中心-工单处理信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessTaskService.java b/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessTaskService.java new file mode 100644 index 0000000..67d0274 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/service/IBusinessTaskService.java @@ -0,0 +1,69 @@ +package org.dromara.business.service; + + +import org.dromara.business.domain.bo.BusinessTaskBo; +import org.dromara.business.domain.vo.BusinessTaskVo; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 工单预约Service接口 + * + * @author LionLi + * @date 2025-02-26 + */ +public interface IBusinessTaskService { + + /** + * 查询工单预约 + * + * @param id 主键 + * @return 工单预约 + */ + BusinessTaskVo queryById(Long id); + + /** + * 分页查询工单预约列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 工单预约分页列表 + */ + TableDataInfo queryPageList(BusinessTaskBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的工单预约列表 + * + * @param bo 查询条件 + * @return 工单预约列表 + */ + List queryList(BusinessTaskBo bo); + + /** + * 新增工单预约 + * + * @param bo 工单预约 + * @return 是否新增成功 + */ + Boolean insertByBo(BusinessTaskBo bo); + + /** + * 修改工单预约 + * + * @param bo 工单预约 + * @return 是否修改成功 + */ + Boolean updateByBo(BusinessTaskBo bo); + + /** + * 校验并批量删除工单预约信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessOperationServiceImpl.java b/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessOperationServiceImpl.java new file mode 100644 index 0000000..ddfa101 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessOperationServiceImpl.java @@ -0,0 +1,139 @@ +package org.dromara.business.service.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.dromara.business.domain.BusinessOperation; +import org.dromara.business.domain.bo.BusinessOperationBo; +import org.dromara.business.domain.vo.BusinessOperationVo; +import org.dromara.business.mapper.BusinessOperationMapper; +import org.dromara.business.service.IBusinessOperationService; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + + +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 运营中心-工单处理Service业务层处理 + * + * @author LionLi + * @date 2025-02-26 + */ +@RequiredArgsConstructor +@Service +public class BusinessOperationServiceImpl implements IBusinessOperationService { + + private final BusinessOperationMapper baseMapper; + + /** + * 查询运营中心-工单处理 + * + * @param id 主键 + * @return 运营中心-工单处理 + */ + @Override + public BusinessOperationVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询运营中心-工单处理列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 运营中心-工单处理分页列表 + */ + @Override + public TableDataInfo queryPageList(BusinessOperationBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的运营中心-工单处理列表 + * + * @param bo 查询条件 + * @return 运营中心-工单处理列表 + */ + @Override + public List queryList(BusinessOperationBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(BusinessOperationBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getTaskId() != null, BusinessOperation::getTaskId, bo.getTaskId()); + lqw.eq(bo.getUserId() != null, BusinessOperation::getUserId, bo.getUserId()); + lqw.like(StringUtils.isNotBlank(bo.getNickName()), BusinessOperation::getNickName, bo.getNickName()); + lqw.eq(StringUtils.isNotBlank(bo.getTaskStatus()), BusinessOperation::getTaskStatus, bo.getTaskStatus()); + lqw.eq(bo.getFlightTime() != null, BusinessOperation::getFlightTime, bo.getFlightTime()); + lqw.eq(StringUtils.isNotBlank(bo.getExplain()), BusinessOperation::getExplain, bo.getExplain()); + lqw.eq(StringUtils.isNotBlank(bo.getDeviceSn()), BusinessOperation::getDeviceSn, bo.getDeviceSn()); + return lqw; + } + + /** + * 新增运营中心-工单处理 + * + * @param bo 运营中心-工单处理 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(BusinessOperationBo bo) { + BusinessOperation add = MapstructUtils.convert(bo, BusinessOperation.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改运营中心-工单处理 + * + * @param bo 运营中心-工单处理 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(BusinessOperationBo bo) { + BusinessOperation update = MapstructUtils.convert(bo, BusinessOperation.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(BusinessOperation entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除运营中心-工单处理信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessTaskServiceImpl.java b/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessTaskServiceImpl.java new file mode 100644 index 0000000..a9c9302 --- /dev/null +++ b/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessTaskServiceImpl.java @@ -0,0 +1,135 @@ +package org.dromara.business.service.impl; + +import org.dromara.business.domain.BusinessTask; +import org.dromara.business.domain.bo.BusinessTaskBo; +import org.dromara.business.domain.vo.BusinessTaskVo; +import org.dromara.business.mapper.BusinessTaskMapper; +import org.dromara.business.service.IBusinessTaskService; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 工单预约Service业务层处理 + * + * @author LionLi + * @date 2025-02-26 + */ +@RequiredArgsConstructor +@Service +public class BusinessTaskServiceImpl implements IBusinessTaskService { + + private final BusinessTaskMapper baseMapper; + + /** + * 查询工单预约 + * + * @param id 主键 + * @return 工单预约 + */ + @Override + public BusinessTaskVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询工单预约列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 工单预约分页列表 + */ + @Override + public TableDataInfo queryPageList(BusinessTaskBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的工单预约列表 + * + * @param bo 查询条件 + * @return 工单预约列表 + */ + @Override + public List queryList(BusinessTaskBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(BusinessTaskBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getLng() != null, BusinessTask::getLng, bo.getLng()); + lqw.eq(bo.getLat() != null, BusinessTask::getLat, bo.getLat()); + lqw.eq(StringUtils.isNotBlank(bo.getTaskType()), BusinessTask::getTaskType, bo.getTaskType()); + lqw.eq(bo.getExpectTime() != null, BusinessTask::getExpectTime, bo.getExpectTime()); + lqw.eq(StringUtils.isNotBlank(bo.getExplain()), BusinessTask::getExplain, bo.getExplain()); + lqw.eq(bo.getCompleteTime() != null, BusinessTask::getCompleteTime, bo.getCompleteTime()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), BusinessTask::getStatus, bo.getStatus()); + return lqw; + } + + /** + * 新增工单预约 + * + * @param bo 工单预约 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(BusinessTaskBo bo) { + BusinessTask add = MapstructUtils.convert(bo, BusinessTask.class); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改工单预约 + * + * @param bo 工单预约 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(BusinessTaskBo bo) { + BusinessTask update = MapstructUtils.convert(bo, BusinessTask.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(BusinessTask entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除工单预约信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/dk-modules/business/src/main/resources/mapper/business/BusinessOperationMapper.xml b/dk-modules/business/src/main/resources/mapper/business/BusinessOperationMapper.xml new file mode 100644 index 0000000..43344a2 --- /dev/null +++ b/dk-modules/business/src/main/resources/mapper/business/BusinessOperationMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/dk-modules/business/src/main/resources/mapper/business/BusinessTaskMapper.xml b/dk-modules/business/src/main/resources/mapper/business/BusinessTaskMapper.xml new file mode 100644 index 0000000..72e21e6 --- /dev/null +++ b/dk-modules/business/src/main/resources/mapper/business/BusinessTaskMapper.xml @@ -0,0 +1,19 @@ + + + + + + diff --git a/dk-modules/business/src/main/resources/mapper/package-info.md b/dk-modules/business/src/main/resources/mapper/package-info.md new file mode 100644 index 0000000..c938b1e --- /dev/null +++ b/dk-modules/business/src/main/resources/mapper/package-info.md @@ -0,0 +1,3 @@ +java包使用 `.` 分割 resource 目录使用 `/` 分割 +
+此文件目的 防止文件夹粘连找不到 `xml` 文件 \ No newline at end of file diff --git a/dk-visual/nacos/src/main/resources/application.properties b/dk-visual/nacos/src/main/resources/application.properties index b33d857..972740f 100644 --- a/dk-visual/nacos/src/main/resources/application.properties +++ b/dk-visual/nacos/src/main/resources/application.properties @@ -42,7 +42,7 @@ db.num=1 ### Connect URL of DB: db.url.0=jdbc:mysql://127.0.0.1:3306/dk_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true db.user.0=root -db.password.0=dkcy@yf +db.password.0=123456 ### the maximum retry times for push nacos.config.push.maxRetryTime=50 diff --git a/pom.xml b/pom.xml index ad11530..151f8d8 100644 --- a/pom.xml +++ b/pom.xml @@ -79,12 +79,12 @@ dev - 114.235.183.147:8848 + 127.0.0.1:8848 DEFAULT_GROUP DEFAULT_GROUP nacos nacos - 114.235.183.147:4560 + 127.0.0.1:4560