无关风月
2 天以前 b2e3d6532dbbb3929e01a598dcef7eb07f39b826
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TAppealController.java
@@ -14,8 +14,10 @@
import com.ruoyi.system.service.*;
import com.ruoyi.system.vo.system.AppealDetailVO;
import com.ruoyi.system.vo.system.AppealListVO;
import com.tencentcloudapi.es.v20180416.models.TaskDetail;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
@@ -92,7 +94,7 @@
            List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser ->
                    sysUser.getPhonenumber().equals(query.getPhonenumber())
            ).map(SysUser::getUserId).collect(Collectors.toList());
            if (!query.getPatrolInspectorIds().isEmpty()){
            if (!CollectionUtils.isEmpty(query.getPatrolInspectorIds())){
                // 取交集
                patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList());
            }
@@ -178,27 +180,55 @@
    @PostMapping(value = "/audit")
    public R<Boolean> audit(@RequestBody @Valid TAppealAuditDTO dto) {
        TAppeal appeal = appealService.getById(dto.getId());
        dto.setStatus(dto.getStatus());
        dto.setAuditPerson(tokenService.getLoginUser().getUserId()+"");
        dto.setAuditTime(LocalDateTime.now());
        TTask task = taskCleanService.getById(appeal.getTaskId());
        TLocation location = locationService.getById(task.getLocationId());
        TNotice tNotice = new TNotice();
        tNotice.setUserId(dto.getAppealPerson());
        tNotice.setUserId(appeal.getAppealPerson());
        tNotice.setStatus(1);
        tNotice.setDataId(dto.getId());
        dto.setAuditTime(LocalDateTime.now());
        TTaskDetail taskDetail = new TTaskDetail();
        taskDetail.setTaskId(appeal.getTaskId());
        Long count = tTaskDetailService.lambdaQuery().eq(TTaskDetail::getTaskId, appeal.getTaskId())
                .eq(TTaskDetail::getHandleType, 1).count();
        if (dto.getStatus()==2){
            taskDetail.setClearStatus(1);
            taskDetail.setAuditTime(LocalDateTime.now());
            taskDetail.setAuditPerson(tokenService.getLoginUser().getUserId()+"");
            taskDetail.setAuditStatus(1);
            taskDetail.setAuditRemark(dto.getAuditRemark());
            taskDetail.setHandleType(5);
            taskDetail.setAppealId(dto.getId());
            // 通过
            TTask byId = taskCleanService.getById(dto.getTaskId());
            byId.setStatus(6);
            if (count>1){
                byId.setStatus(5);
            }else{
                byId.setStatus(6);
            }
            taskCleanService.updateById(byId);
            tNotice.setNoticeType(5);
            tNotice.setNoticeContent("【"+location.getLocationName()+"】任务申诉通过");
        }else{
            taskDetail.setClearStatus(2);
            taskDetail.setAuditTime(LocalDateTime.now());
            taskDetail.setAuditPerson(tokenService.getLoginUser().getUserId()+"");
            taskDetail.setAuditStatus(2);
            taskDetail.setAuditRemark(dto.getAuditRemark());
            taskDetail.setHandleType(6);
            taskDetail.setAppealId(dto.getId());
            tNotice.setNoticeType(4);
            tNotice.setNoticeContent("【"+location.getLocationName()+"】任务申诉驳回");
        }
        noticeService.save(tNotice);
        dto.setAuditPerson(tokenService.getLoginUser().getUserId()+"");
        appealService.updateById(dto);
        tTaskDetailService.save(taskDetail);
        return R.ok();
    }
}