package com.doumee.cloud.admin;
|
|
import com.doumee.api.BaseController;
|
import com.doumee.core.constants.ResponseStatus;
|
import com.doumee.core.exception.BusinessException;
|
import com.doumee.core.model.ApiResponse;
|
import com.doumee.core.model.LoginUserInfo;
|
import com.doumee.core.model.PageData;
|
import com.doumee.core.model.PageWrap;
|
import com.doumee.core.utils.Constants;
|
import com.doumee.dao.admin.response.StagingDataVO;
|
import com.doumee.dao.business.model.Visits;
|
import com.doumee.dao.system.dto.NoticesDTO;
|
import com.doumee.dao.system.model.Notices;
|
import com.doumee.dao.web.response.InternalHomeVO;
|
import com.doumee.service.business.ApproveService;
|
import com.doumee.service.business.MemberService;
|
import com.doumee.service.business.VisitsService;
|
import com.doumee.service.system.NoticesService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.Objects;
|
|
/**
|
* Created by IntelliJ IDEA.
|
*
|
* @Author : Rk
|
* @create 2024/2/26 11:00
|
*/
|
@Api(tags = "工作台数据")
|
@RestController
|
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/staging")
|
public class StagingCloudController extends BaseController {
|
|
|
@Autowired
|
private MemberService memberService;
|
|
@Autowired
|
private VisitsService visitsService;
|
|
@Autowired
|
private NoticesService noticesService;
|
|
@Autowired
|
private ApproveService approveService;
|
|
|
@ApiOperation("头部数据")
|
@GetMapping("/head")
|
public ApiResponse<StagingDataVO> head(@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
|
return ApiResponse.success("查询成功",memberService.stagingHead(new StagingDataVO()));
|
}
|
|
|
@ApiOperation("主体数据")
|
@GetMapping("/body")
|
public ApiResponse<StagingDataVO> body(@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
|
return ApiResponse.success("查询成功",memberService.stagingBody(new StagingDataVO()));
|
}
|
|
|
@ApiOperation("超时预警人员")
|
@PostMapping("/timeoutPage")
|
public ApiResponse<PageData<Visits>> timeoutPage (@RequestBody PageWrap<Visits> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
|
pageWrap.getModel().setLevelStatus(Constants.ZERO);
|
return ApiResponse.success(visitsService.retentionPage(pageWrap));
|
}
|
|
@ApiOperation("超时预警人员离场")
|
@GetMapping("/level")
|
// @RequiresPermissions("business:visits:level")
|
public ApiResponse level (@RequestParam Integer visitId,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
|
visitsService.visitLevel(visitId);
|
return ApiResponse.success("操作成功");
|
}
|
|
|
|
@ApiOperation(value = "任务中心头部 - H5", notes = "H5")
|
@GetMapping("/taskCenterHead")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "query", dataType = "Integer", name = "isDetail", value = " 是否查询详细 1是;0否", required = true),
|
})
|
public ApiResponse<InternalHomeVO> taskCenterHead(@RequestParam Integer isDetail,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
|
return ApiResponse.success("查询成功",approveService.getHomeDataH5(getLoginUser(token).getMemberId(),isDetail));
|
}
|
|
|
@ApiOperation(value = "任务中心头部 - PC", notes = "PC")
|
@PostMapping("/taskCenterHeadPC")
|
public ApiResponse<InternalHomeVO> taskCenterHeadPC(@RequestBody NoticesDTO noticesDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
|
noticesDTO.setMemberId(getLoginUser(token).getMemberId());
|
return ApiResponse.success("查询成功",approveService.getHomeDataPC(noticesDTO));
|
}
|
|
@ApiOperation("任务中心分页")
|
@PostMapping("/taskPage")
|
public ApiResponse<PageData<Notices>> taskPage (@RequestBody PageWrap<NoticesDTO> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
|
LoginUserInfo loginUserInfo = getLoginUser(token);
|
pageWrap.getModel().setMemberId(loginUserInfo.getMemberId());
|
return ApiResponse.success(noticesService.taskCanterPage(pageWrap));
|
}
|
|
@ApiOperation("标记已读")
|
@GetMapping("/signRead")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "query", dataType = "Integer", name = "noticesId", value = "记录主键", required = false),
|
@ApiImplicitParam(paramType = "query", dataType = "Integer", name = "signType", value = "标记类型:0=单个标记;1=标记全部未读", required = false),
|
})
|
public ApiResponse signRead (Integer noticesId,@RequestParam Integer signType, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
|
LoginUserInfo loginUserInfo = getLoginUser(token);
|
if(Constants.equalsInteger(signType,Constants.ZERO)){
|
noticesService.signReadById(noticesId);
|
}else{
|
noticesService.signRead(loginUserInfo.getMemberId());
|
}
|
return ApiResponse.success("操作成功");
|
}
|
}
|