k94314517
2025-04-21 16332a341801f80d27830d2ea4e683b4ab21167c
server/src/main/java/com/doumee/api/web/WebWorkOrderController.java
@@ -1,20 +1,26 @@
package com.doumee.api.web;
import com.doumee.config.Jwt.JwtTokenUtil;
import com.doumee.config.annotation.EncryptionReq;
import com.doumee.config.annotation.EncryptionResp;
import com.doumee.config.annotation.LoginRequired;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.Managers;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.Workorder;
import com.doumee.dao.web.dto.UpdEmailDTO;
import com.doumee.dao.web.dto.*;
import com.doumee.dao.web.vo.WorkOrderDataVO;
import com.doumee.service.business.ManagersService;
import com.doumee.service.business.MemberService;
import com.doumee.service.business.WorkorderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.java.Log;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.http.server.reactive.ServerHttpRequest;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.server.ServerWebExchange;
@@ -48,13 +54,13 @@
    @LoginRequired
    @ApiOperation("风险上报")
    @PostMapping("/create")
    public ApiResponse create (@RequestBody Workorder workorder, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
    @EncryptionReq
    @EncryptionResp
    public ApiResponse create (@RequestBody Workorder workorder, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            ServerHttpRequest request = serverWebExchange.getRequest();
            Member user =  jwtTokenUtil.getUserInfoByToken(token);
            workorder.setMemberId(user.getId());
            workorderService.create(workorder);
            return ApiResponse.success("操作成功");
            return ApiResponse.success(workorderService.create(workorder));
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
        }catch (Exception e){
@@ -67,10 +73,11 @@
    @LoginRequired
    @ApiOperation("通知人查询")
    @PostMapping("/managersList")
    public ApiResponse<List<Managers>> managersList (@RequestBody Managers model, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
    @EncryptionReq
    @EncryptionResp
    public ApiResponse<List<Managers>> managersList (@RequestBody Managers model, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            ServerHttpRequest request = serverWebExchange.getRequest();
            Member user =  jwtTokenUtil.getUserInfoByToken(token);
            return ApiResponse.success(managersService.findList(model));
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
@@ -84,10 +91,31 @@
    @LoginRequired
    @ApiOperation("风险上报详情")
    @GetMapping("/detail")
    public ApiResponse<Workorder> detail (@RequestParam Integer id, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
    @EncryptionReq
    @EncryptionResp
    public ApiResponse<Workorder> detail (@RequestParam Integer id, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            ServerHttpRequest request = serverWebExchange.getRequest();
            return ApiResponse.success(workorderService.getDetail(id));
            return ApiResponse.success(workorderService.getDetail(id,jwtTokenUtil.getUserInfoByToken(token)));
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
        }catch (Exception e){
            e.printStackTrace();
            return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
        }
    }
    @LoginRequired
    @ApiOperation("工单关闭")
    @PostMapping("/closeWorkOrder")
    @EncryptionReq
    @EncryptionResp
    public ApiResponse closeWorkOrder(@RequestBody CloseDTO closeDTO, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            closeDTO.setMember(jwtTokenUtil.getUserInfoByToken(token));
            workorderService.closeWorkOrder(closeDTO);
            return ApiResponse.success("操作成功");
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
        }catch (Exception e){
@@ -99,8 +127,100 @@
    @LoginRequired
    @ApiOperation("工单指派")
    @PostMapping("/passOn")
    @EncryptionReq
    @EncryptionResp
    public ApiResponse passOn(@RequestBody PassOnDTO passOnDTO, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            passOnDTO.setMember(jwtTokenUtil.getUserInfoByToken(token));
            workorderService.passOn(passOnDTO);
            return ApiResponse.success("操作成功");
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
        }catch (Exception e){
            e.printStackTrace();
            return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
        }
    }
    @LoginRequired
    @ApiOperation("工单催促")
    @GetMapping("/urge")
    @EncryptionReq
    @EncryptionResp
    public ApiResponse urge(@RequestParam Integer workorderId, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            workorderService.urge(workorderId,jwtTokenUtil.getUserInfoByToken(token));
            return ApiResponse.success("操作成功");
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
        }catch (Exception e){
            e.printStackTrace();
            return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
        }
    }
    @LoginRequired
    @ApiOperation("工单抄送")
    @PostMapping("/sendCopy")
    @EncryptionReq
    @EncryptionResp
    public ApiResponse sendCopy(@RequestBody SendCopyDTO sendCopyDTO, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            sendCopyDTO.setMember(jwtTokenUtil.getUserInfoByToken(token));
            workorderService.sendCopy(sendCopyDTO);
            return ApiResponse.success("操作成功");
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
        }catch (Exception e){
            e.printStackTrace();
            return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
        }
    }
    @LoginRequired
    @ApiOperation("SHE、跌绊滑报表")
    @PostMapping("/getWorkOrderData")
    @EncryptionReq
    @EncryptionResp
    public ApiResponse<List<WorkOrderDataVO>> getWorkOrderData(@RequestBody OrderDataDTO orderDataDTO, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            return ApiResponse.success(workorderService.getWorkOrderData(orderDataDTO));
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
        }catch (Exception e){
            e.printStackTrace();
            return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
        }
    }
    @LoginRequired
    @ApiOperation("分页查询")
    @PostMapping("/page")
    @EncryptionReq
    @EncryptionResp
    public ApiResponse<PageData<Workorder>> findPage (@RequestBody PageWrap<Workorder> pageWrap,@RequestHeader(JwtTokenUtil.HEADER_KEY) String token) {
        try {
            Member member = jwtTokenUtil.getUserInfoByToken(token);
            pageWrap.getModel().setQwId(member.getQwId());
            return ApiResponse.success(workorderService.findPage(pageWrap));
        }catch (BusinessException e){
            return ApiResponse.failed(e.getCode(),e.getMessage());
        }catch (Exception e){
            e.printStackTrace();
            return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
        }
    }
}