package com.doumee.api.web;
|
|
import com.doumee.config.Jwt.JwtTokenUtil;
|
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.dao.business.model.Managers;
|
import com.doumee.dao.business.model.Member;
|
import com.doumee.dao.business.model.Workorder;
|
import com.doumee.dao.web.dto.CloseDTO;
|
import com.doumee.dao.web.dto.PassOnDTO;
|
import com.doumee.dao.web.dto.UpdEmailDTO;
|
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.springframework.http.server.reactive.ServerHttpRequest;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.server.ServerWebExchange;
|
|
import javax.annotation.Resource;
|
import java.util.List;
|
|
/**
|
* Created by IntelliJ IDEA.
|
*
|
* @Author : Rk
|
* @create 2025/4/8 9:35
|
*/
|
@RestController
|
@Api(tags ="工单上报")
|
@RequestMapping("/web/workOrder")
|
public class WebWorkOrderController {
|
|
|
@Resource
|
private JwtTokenUtil jwtTokenUtil;
|
|
@Resource
|
private WorkorderService workorderService;
|
|
@Resource
|
private ManagersService managersService;
|
|
|
|
@LoginRequired
|
@ApiOperation("风险上报")
|
@PostMapping("/create")
|
public ApiResponse create (@RequestBody Workorder workorder, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
|
try {
|
ServerHttpRequest request = serverWebExchange.getRequest();
|
Member user = jwtTokenUtil.getUserInfoByToken(token);
|
workorder.setMemberId(user.getId());
|
workorderService.create(workorder);
|
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("/managersList")
|
public ApiResponse<List<Managers>> managersList (@RequestBody Managers model, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
|
try {
|
ServerHttpRequest request = serverWebExchange.getRequest();
|
return ApiResponse.success(managersService.findList(model));
|
}catch (BusinessException e){
|
return ApiResponse.failed(e.getCode(),e.getMessage());
|
}catch (Exception e){
|
e.printStackTrace();
|
return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
|
}
|
}
|
|
|
@LoginRequired
|
@ApiOperation("风险上报详情")
|
@GetMapping("/detail")
|
public ApiResponse<Workorder> detail (@RequestParam Integer id, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
|
try {
|
ServerHttpRequest request = serverWebExchange.getRequest();
|
return ApiResponse.success(workorderService.getDetail(id));
|
}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")
|
public ApiResponse closeWorkOrder(@RequestBody CloseDTO closeDTO, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
|
try {
|
ServerHttpRequest request = serverWebExchange.getRequest();
|
closeDTO.setMember(jwtTokenUtil.getUserInfoByToken(token));
|
workorderService.closeWorkOrder(closeDTO);
|
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("/passOn")
|
public ApiResponse passOn(@RequestBody PassOnDTO passOnDTO, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
|
try {
|
ServerHttpRequest request = serverWebExchange.getRequest();
|
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")
|
public ApiResponse urge(@RequestParam Integer workorderId, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
|
try {
|
ServerHttpRequest request = serverWebExchange.getRequest();
|
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("报表")
|
@GetMapping("/getWorkOrderData")
|
public ApiResponse<List<WorkOrderDataVO>> getWorkOrderData(@RequestParam Integer queryType, @RequestHeader(JwtTokenUtil.HEADER_KEY) String token, ServerWebExchange serverWebExchange) {
|
try {
|
ServerHttpRequest request = serverWebExchange.getRequest();
|
return ApiResponse.success(workorderService.getWorkOrderData(queryType));
|
}catch (BusinessException e){
|
return ApiResponse.failed(e.getCode(),e.getMessage());
|
}catch (Exception e){
|
e.printStackTrace();
|
return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
|
}
|
}
|
|
|
|
|
}
|