package com.ruoyi.web.controller.api;
|
|
|
import com.alibaba.fastjson.JSON;
|
import com.ruoyi.common.basic.PageInfo;
|
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.system.dto.MissionSetUserDto;
|
import com.ruoyi.system.model.TAppUser;
|
import com.ruoyi.system.model.TMission;
|
import com.ruoyi.system.model.TMissionUser;
|
import com.ruoyi.system.query.TMissionQuery;
|
import com.ruoyi.system.service.TAppUserService;
|
import com.ruoyi.system.service.TMissionService;
|
import com.ruoyi.system.service.TMissionUserService;
|
import com.ruoyi.system.vo.TMissionReassignVO;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.time.LocalDateTime;
|
|
/**
|
* <p>
|
* 任务支援、改派 前端控制器
|
* </p>
|
*
|
* @author xiaochen
|
* @since 2025-09-29
|
*/
|
@RestController
|
@RequestMapping("")
|
@Api(tags = "任务支援、改派 ")
|
public class TMissionReassignController {
|
|
private final TMissionService missionService;
|
private final TAppUserService appUserService;
|
private final TMissionUserService missionUserService;
|
|
public TMissionReassignController(TMissionService missionService, TAppUserService appUserService, TMissionUserService missionUserService) {
|
this.missionService = missionService;
|
this.appUserService = appUserService;
|
this.missionUserService = missionUserService;
|
}
|
|
|
@ApiOperation(value = "任务指派", response = TMissionReassignVO.class)
|
@PostMapping(value = "/api/t-mission-reassign/missionSetUser")
|
public R<?> missionSetUser(@RequestBody String param) {
|
MissionSetUserDto dto = JSON.parseObject(param, MissionSetUserDto.class);
|
TMission tMission = missionService.getById(dto.getMissionId());
|
if(tMission.getStatus()!=1){
|
return R.fail("任务状态不是待指派");
|
}
|
TAppUser appUser = appUserService.getById(dto.getAppUserId());
|
if(appUser.getMissionState()!=1){
|
return R.fail("用户正在执行任务");
|
}
|
tMission.setStatus(2);
|
tMission.setAssignTime(LocalDateTime.now());
|
missionService.updateById(tMission);
|
|
TMissionUser missionUser = new TMissionUser();
|
missionUser.setAppUserId(dto.getAppUserId());
|
missionUser.setMissionId(dto.getMissionId());
|
missionUser.setUserType(1);
|
missionUser.setStatus(0);
|
missionUserService.save(missionUser);
|
|
appUser.setMissionState(2);
|
appUserService.updateById(appUser);
|
|
return R.ok();
|
}
|
|
}
|