package com.zy.acs.manager.manager.controller; import com.zy.acs.framework.common.Cools; import com.zy.acs.framework.common.R; import com.zy.acs.manager.core.domain.TaskPosDto; import com.zy.acs.manager.manager.entity.Action; import com.zy.acs.manager.manager.entity.Segment; import com.zy.acs.manager.manager.service.MissionService; import com.zy.acs.manager.manager.service.SegmentService; import com.zy.acs.manager.system.controller.BaseController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.List; import java.util.Map; /** * Created by vincent on 9/27/2024 */ @RestController @RequestMapping("/api") public class MissionController extends BaseController { @Autowired private MissionService missionService; @Autowired private SegmentService segmentService; @PreAuthorize("hasAuthority('manager:mission:list')") @PostMapping("/mission/page") public R page(@RequestBody Map map) { Long agvId = null; if (null != map.get("agvId")) { agvId = Long.parseLong(String.valueOf(map.get("agvId"))); } String groupNo = null; if (!Cools.isEmpty(map.get("groupNo"))) { groupNo = String.valueOf(map.get("groupNo")); } return R.ok().add(Cools.add("total", Integer.MAX_VALUE).add("records", missionService.getList(agvId, groupNo))); } @PreAuthorize("hasAuthority('manager:mission:list')") @PostMapping("/mission/posType/list") public R posTypeList() { List list = new ArrayList<>(); for (TaskPosDto.PosType value : TaskPosDto.PosType.values()) { list.add(value.toString()); } return R.ok().add(list); } @PreAuthorize("hasAuthority('manager:mission:list')") @GetMapping("/mission/{id}") public R get(@PathVariable("id") Long id) { Segment segment = segmentService.getById(id); return R.ok().add(missionService.generateVoMoreInfo(segment.getGroupId())); } @PreAuthorize("hasAuthority('manager:mission:update')") @PostMapping("/mission/resend") public R resend(@RequestBody List actionList) { return missionService.resend(actionList) ? R.ok("Resend Success") : R.error("Resend Fail"); } }