diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/garden/BpmGardenInspectController.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/garden/BpmGardenInspectController.java index 82e0240..52718c2 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/garden/BpmGardenInspectController.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/garden/BpmGardenInspectController.java @@ -3,11 +3,7 @@ package com.zteits.urbanops.module.workorder.controller.admin.garden; import com.zteits.urbanops.framework.common.pojo.CommonResult; import com.zteits.urbanops.framework.common.pojo.PageResult; import com.zteits.urbanops.framework.common.util.object.BeanUtils; -import com.zteits.urbanops.module.bpm.controller.admin.oa.vo.BpmOALeaveCreateReqVO; -import com.zteits.urbanops.module.bpm.controller.admin.oa.vo.BpmOALeavePageReqVO; -import com.zteits.urbanops.module.bpm.controller.admin.oa.vo.BpmOALeaveRespVO; -import com.zteits.urbanops.module.bpm.dal.dataobject.oa.BpmOALeaveDO; -import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderCreateReqVo; +import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderCreateReqVO; import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderPageReqVO; import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderRespVO; import com.zteits.urbanops.module.workorder.dal.dataobject.garden.BpmGardenWorkOrderDO; @@ -41,7 +37,7 @@ public class BpmGardenInspectController { @PostMapping("/create") @PreAuthorize("@ss.hasPermission('bpm:garden-inspection:create')") @Operation(summary = "创建请求申请") - public CommonResult createGardenInspection(@Valid @RequestBody BpmGardenWorkOrderCreateReqVo createReqVO) { + public CommonResult createGardenInspection(@Valid @RequestBody BpmGardenWorkOrderCreateReqVO createReqVO) { return success(gardenService.createWorkOrder(getLoginUserId(), createReqVO)); } diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/garden/vo/BpmGardenWorkOrderCreateReqVo.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/garden/vo/BpmGardenWorkOrderCreateReqVO.java index 7ef247d..62605eb 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/garden/vo/BpmGardenWorkOrderCreateReqVo.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/garden/vo/BpmGardenWorkOrderCreateReqVO.java @@ -18,7 +18,7 @@ import java.util.Map; */ @Schema(description = "园林工单请求创建 Request VO") @Data -public class BpmGardenWorkOrderCreateReqVo { +public class BpmGardenWorkOrderCreateReqVO { @Schema(description = "业务线:yl 园林,wy 物业,sz 市政 ", requiredMode = Schema.RequiredMode.REQUIRED) @NotEmpty(message = "业务线:yl 园林,wy 物业,sz 市政 不能为空") diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/AppGardenWorkOrderController.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/AppGardenWorkOrderController.java index aeddf07..e3366c2 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/AppGardenWorkOrderController.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/AppGardenWorkOrderController.java @@ -5,7 +5,9 @@ import com.zteits.urbanops.framework.common.pojo.PageResult; import com.zteits.urbanops.framework.common.util.object.BeanUtils; import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderPageReqVO; import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderRespVO; +import com.zteits.urbanops.module.workorder.controller.app.garden.vo.AppGardenWorkOrderPageReqVO; import com.zteits.urbanops.module.workorder.controller.app.garden.vo.AppGardenWorkOrderReqVO; +import com.zteits.urbanops.module.workorder.controller.app.garden.vo.AppGardenWorkOrderRespVO; import com.zteits.urbanops.module.workorder.dal.dataobject.garden.BpmGardenWorkOrderDO; import com.zteits.urbanops.module.workorder.service.garden.BpmGardenService; import io.swagger.v3.oas.annotations.Operation; @@ -27,36 +29,40 @@ import static com.zteits.urbanops.framework.security.core.util.SecurityFramework */ @Tag(name = "APP - 园林工单bpm") @RestController -@RequestMapping("/app/garden/workorder") +@RequestMapping("/bpm/garden/workorder") public class AppGardenWorkOrderController { @Resource private BpmGardenService gardenService; @PostMapping("/create") + //@PreAuthorize("@ss.hasPermission('bpm:garden-workorder:create')") @Operation(summary = "app-创建工单信息") public CommonResult createMainInfo(@Valid @RequestBody AppGardenWorkOrderReqVO createReqVO) { return success(gardenService.createWorkOrder(createReqVO)); } @PostMapping("/createQuick") + //@PreAuthorize("@ss.hasPermission('bpm:garden-workorder:create')") @Operation(summary = "app-创建快速工单信息") public CommonResult createMainInfoQuick(@Valid @RequestBody AppGardenWorkOrderReqVO createReqVO) { return success(gardenService.createWorkOrderQuick(createReqVO)); } @GetMapping("/get") + //@PreAuthorize("@ss.hasPermission('bpm:garden-workorder:query')") @Operation(summary = "app-获得工单详情") @Parameter(name = "id", description = "编号", required = true, example = "1024") - public CommonResult getGardenInspection(@RequestParam("id") Long id) { + public CommonResult getGardenInspection(@RequestParam("id") Long id) { BpmGardenWorkOrderDO gardenInspection = gardenService.getWorkOrder(id); - return success(BeanUtils.toBean(gardenInspection, BpmGardenWorkOrderRespVO.class)); + return success(BeanUtils.toBean(gardenInspection, AppGardenWorkOrderRespVO.class)); } @GetMapping("/page") + //@PreAuthorize("@ss.hasPermission('bpm:garden-workorder:query')") @Operation(summary = "app-获得园林巡检工单申请分页") - public CommonResult> getGardenInspectionPage(@Valid BpmGardenWorkOrderPageReqVO pageVO) { + public CommonResult> getGardenInspectionPage(@Valid AppGardenWorkOrderPageReqVO pageVO) { PageResult pageResult = gardenService.getGardenInspectionPage(getLoginUserId(), pageVO); - return success(BeanUtils.toBean(pageResult, BpmGardenWorkOrderRespVO.class)); + return success(BeanUtils.toBean(pageResult, AppGardenWorkOrderRespVO.class)); } } diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderPageReqVO.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderPageReqVO.java new file mode 100644 index 0000000..6a0b35c --- /dev/null +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderPageReqVO.java @@ -0,0 +1,17 @@ +package com.zteits.urbanops.module.workorder.controller.app.garden.vo; + +import com.zteits.urbanops.framework.common.pojo.PageParam; +import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.MainInfoPageReqVO; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * @author yanhuiqing + * @version 1.0 + * @description: TODO + * @date 2025/12/9 20:21 + */ +@Schema(description = "管理后台 - 工单信息分页 Request VO") +@Data +public class AppGardenWorkOrderPageReqVO extends MainInfoPageReqVO { +} diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderReqVO.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderReqVO.java index 6841b3e..e22a27a 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderReqVO.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderReqVO.java @@ -36,7 +36,7 @@ public class AppGardenWorkOrderReqVO { @Length(max = 500) private String remark; - @NotEmpty(message = "经纬度类型") + @Schema(description = "经纬度类型: 1:国标; 2:百度;3:高德;4:腾讯", example = "2") private Integer latLonType; @@ -59,7 +59,7 @@ public class AppGardenWorkOrderReqVO { @Schema(description = "工单名称", example = "绿地卫生") private String orderName; - @Schema(description = "来源ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @Schema(description = "来源ID 工单来源 1、巡查,2、游客居民,3、12345,4、网格", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") //@NotNull(message = "来源ID不能为空") private Integer sourceId; diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderRespVO.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderRespVO.java new file mode 100644 index 0000000..0788d80 --- /dev/null +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/app/garden/vo/AppGardenWorkOrderRespVO.java @@ -0,0 +1,16 @@ +package com.zteits.urbanops.module.workorder.controller.app.garden.vo; + +import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.MainInfoRespVO; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * @author yanhuiqing + * @version 1.0 + * @description: TODO + * @date 2025/12/9 20:18 + */ +@Schema(description = "APP - 园林工单流程 Response VO") +@Data +public class AppGardenWorkOrderRespVO extends MainInfoRespVO { +} diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmGardenService.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmGardenService.java index 21246aa..2dadff4 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmGardenService.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmGardenService.java @@ -1,8 +1,9 @@ package com.zteits.urbanops.module.workorder.service.garden; import com.zteits.urbanops.framework.common.pojo.PageResult; -import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderCreateReqVo; +import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderCreateReqVO; import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderPageReqVO; +import com.zteits.urbanops.module.workorder.controller.app.garden.vo.AppGardenWorkOrderPageReqVO; import com.zteits.urbanops.module.workorder.controller.app.garden.vo.AppGardenWorkOrderReqVO; import com.zteits.urbanops.module.workorder.dal.dataobject.garden.BpmGardenWorkOrderDO; import jakarta.validation.Valid; @@ -25,7 +26,7 @@ public interface BpmGardenService { * @param createRequestVo * @return */ - Long createWorkOrder(Long userId,@Valid BpmGardenWorkOrderCreateReqVo createRequestVo); + Long createWorkOrder(Long userId,@Valid BpmGardenWorkOrderCreateReqVO createRequestVo); /** * 更新工单申请的状态 @@ -49,6 +50,14 @@ public interface BpmGardenService { * @param pageVO * @return */ + PageResult getGardenInspectionPage(Long loginUserId, AppGardenWorkOrderPageReqVO pageVO); + + /** + * 获得工单分页数据 + * @param loginUserId + * @param pageVO + * @return + */ PageResult getGardenInspectionPage(Long loginUserId, BpmGardenWorkOrderPageReqVO pageVO); /** diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmGardenServiceImpl.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmGardenServiceImpl.java index 35b1df3..a43b1df 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmGardenServiceImpl.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmGardenServiceImpl.java @@ -8,12 +8,12 @@ import com.zteits.urbanops.framework.security.core.util.SecurityFrameworkUtils; import com.zteits.urbanops.module.bpm.api.task.BpmProcessInstanceApi; import com.zteits.urbanops.module.bpm.api.task.dto.BpmProcessInstanceCreateReqDTO; import com.zteits.urbanops.module.bpm.enums.task.BpmTaskStatusEnum; -import com.zteits.urbanops.module.bpm.service.task.BpmProcessInstanceService; import com.zteits.urbanops.module.workorder.api.constant.BpmCommonConstant; import com.zteits.urbanops.module.workorder.api.workorder.WorkOrderApi; -import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderCreateReqVo; +import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderCreateReqVO; import com.zteits.urbanops.module.workorder.controller.admin.garden.vo.BpmGardenWorkOrderPageReqVO; import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.MainInfoPageReqVO; +import com.zteits.urbanops.module.workorder.controller.app.garden.vo.AppGardenWorkOrderPageReqVO; import com.zteits.urbanops.module.workorder.controller.app.garden.vo.AppGardenWorkOrderReqVO; import com.zteits.urbanops.module.workorder.dal.dataobject.attachment.AttachmentDO; import com.zteits.urbanops.module.workorder.dal.dataobject.garden.BpmGardenWorkOrderDO; @@ -71,6 +71,8 @@ public class BpmGardenServiceImpl implements BpmGardenService{ workOrder.setOrderName("园林工单"); workOrder.setCompanyId(SecurityFrameworkUtils.getCompanyId()); workOrder.setBusiLine(SecurityFrameworkUtils.getBusiLine()); + workOrder.setUserId(SecurityFrameworkUtils.getLoginUserId()); + workOrder.setUserName(SecurityFrameworkUtils.getLoginUserNickname()); workOrderMapper.insert(workOrder); //附件插入 @@ -119,7 +121,7 @@ public class BpmGardenServiceImpl implements BpmGardenService{ @Override @Transactional(rollbackFor = Exception.class) - public Long createWorkOrder(Long userId, BpmGardenWorkOrderCreateReqVo createRequestVo) { + public Long createWorkOrder(Long userId, BpmGardenWorkOrderCreateReqVO createRequestVo) { List imgList = createRequestVo.getImgs(); List streetImgList = createRequestVo.getStreetImgList(); List longRangeImgList = createRequestVo.getLongRangeImgList(); @@ -238,5 +240,13 @@ public class BpmGardenServiceImpl implements BpmGardenService{ return targetList; } + @Override + public PageResult getGardenInspectionPage(Long loginUserId, AppGardenWorkOrderPageReqVO pageVO) { + MainInfoPageReqVO mainInfoPageReqVo = BeanUtils.toBean(pageVO,MainInfoPageReqVO.class); + PageResult pageList = workOrderMapper.selectPage(loginUserId, mainInfoPageReqVo); + PageResult targetList = BeanUtils.toBean(pageList,BpmGardenWorkOrderDO.class); + return targetList; + } + } diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/listener/BpmQuickProcessTaskAutoCompleteListener.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/listener/BpmQuickProcessTaskAutoCompleteListener.java index 4bd3fc7..8807ef3 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/listener/BpmQuickProcessTaskAutoCompleteListener.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/listener/BpmQuickProcessTaskAutoCompleteListener.java @@ -5,6 +5,7 @@ import com.zteits.urbanops.module.bpm.api.event.BpmProcessInstanceStatusEventLis import com.zteits.urbanops.module.workorder.api.constant.BpmCommonConstant; import com.zteits.urbanops.module.workorder.service.garden.BpmGardenService; import jakarta.annotation.Resource; +import lombok.extern.slf4j.Slf4j; import org.flowable.common.engine.api.delegate.event.FlowableEngineEntityEvent; import org.springframework.stereotype.Component; @@ -15,6 +16,7 @@ import org.springframework.stereotype.Component; * @date 2025/12/6 14:00 */ @Component +@Slf4j public class BpmQuickProcessTaskAutoCompleteListener extends BpmProcessInstanceStatusEventListener { @Resource private BpmGardenService gardenService; @@ -25,6 +27,7 @@ public class BpmQuickProcessTaskAutoCompleteListener extends BpmProcessInstanceS @Override protected void onEvent(BpmProcessInstanceStatusEvent event) { + log.info("业务ID:"+event.getBusinessKey()+",业务状态"+event.getStatus()); gardenService.updateWorkOrderStatus(Long.parseLong(event.getBusinessKey()), event.getStatus()); }