yangys
2024-11-02 f69073b835f1a0c66590130e1830edcdd75ebb8a
smart-man-boot/src/main/java/com/qianwen/smartman/modules/mdc/controller/WorkstationFeedbackController.java
@@ -25,8 +25,8 @@
import com.qianwen.core.tool.utils.Func;
import com.qianwen.smartman.common.cache.RegionCache;
import com.qianwen.smartman.common.utils.Lambda;
import com.qianwen.smartman.modules.cps.service.IWorkstationService;
import com.qianwen.smartman.modules.cps.vo.WorkstationVO;
import com.qianwen.smartman.modules.smis.service.IWorkstationService;
import com.qianwen.smartman.modules.smis.vo.WorkstationVO;
import com.qianwen.smartman.modules.mdc.dto.WorkstationEndAndStartImmediateFeedBackDTO;
import com.qianwen.smartman.modules.mdc.dto.WorkstationEndImmediateFeedBackDTO;
import com.qianwen.smartman.modules.mdc.dto.WorkstationFeedBackQueryDTO;
@@ -51,7 +51,7 @@
import io.swagger.annotations.ApiParam;
@Api(value = "工位反馈", tags = {"工位反馈"})
@ApiResource({"blade-cps/workstation-wcs-feedback"})
@ApiResource({"mdc/workstation-wcs-feedback"})
@RestController
public class WorkstationFeedbackController {
    private final IWorkstationFeedbackService wcsFeedbackService;
@@ -87,13 +87,18 @@
        return R.data(WorkstationFeedbackWrapper.build().entityVO(feedback));
    }
    /**
     * 状态反馈界面分页查询
     * @param query
     * @param queryDTO
     * @return
     */
    @PostMapping({"/page"})
    @ApiOperationSupport
    @ApiOperation("工位反馈分页列表查询")
    public R<IPage<WorkstationFeedBackDetailVO>> page(Query query, @RequestBody WorkstationFeedBackQueryDTO queryDTO) {
       IPage<WorkstationFeedbackDetail> page = this.detailService.page(Condition.getPage(query), 
               Lambda.eq(WorkstationFeedbackDetail::getStatus, Integer.valueOf(FeedbackDetailStatus.EFFECTED.getValue()))
               Lambda.eq(WorkstationFeedbackDetail::getStatus, FeedbackDetailStatus.EFFECTED.getValue())
               .eq(WorkstationFeedbackDetail::getCancel, Boolean.FALSE)
               .in(Func.isNotEmpty(queryDTO.getWorkstationGroupId()), WorkstationFeedbackDetail::getWorkstationId, this.workstationService
                 .getWorkstationByGroupIds(ListUtil.toList(new String[] { queryDTO.getWorkstationGroupId() })).stream().map(WorkstationVO::getId).collect(Collectors.toList()))
@@ -143,6 +148,11 @@
        return R.data(page);
    }
    /**
     * 应该是直接录入一个状态(不录入起止时间),起始时间为当前时间,如果有现存的即时状态,则直接更新其结束时间为当前时间
     * @param immediateFeedBackDTO
     * @return
     */
    @PostMapping({"/start-feedback-by-immediate"})
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "H5: 状态即时反馈登记", notes = "工位即时反馈, 进行中的反馈")
@@ -150,6 +160,11 @@
        return R.status(this.wcsFeedbackService.startFeedbackByImmediate(immediateFeedBackDTO));
    }
    /**
     * 保存人工反馈的状态(状态记录界面)
     * @param noImmediateFeedBackDTO
     * @return
     */
    @PostMapping({"/start-feedback-by-no-immediate"})
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "H5: 时间段反馈", notes = "时间段反馈")
@@ -160,11 +175,16 @@
        return R.status(this.wcsFeedbackService.startFeedbackByNoImmediate(noImmediateFeedBackDTO));
    }
    /**
     * 状态提交前检查
     * @param noImmediateFeedBackDTO
     * @return
     */
    @PostMapping({"/overwrite-feedback-check"})
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "查询是否有覆盖的反馈", notes = "data true: 会覆盖反馈,提示 false: 不会覆盖反馈,不提示直接提交")
    public R<Boolean> overwriteFeedback(@Validated @RequestBody WorkstationNoImmediateFeedBackDTO noImmediateFeedBackDTO) {
        return R.data(Boolean.valueOf(this.detailService.overwriteFeedbackCheck(noImmediateFeedBackDTO)));
        return R.data(this.detailService.overwriteFeedbackCheck(noImmediateFeedBackDTO));
    }
    @ApiOperationSupport(order = RegionCache.VILLAGE_LEVEL)