package com.qianwen.smartman.modules.mdc.wrapper; import java.util.Optional; import com.qianwen.smartman.common.enums.GlobalWcsTypeEnum; import com.qianwen.core.mp.support.BaseEntityWrapper; import com.qianwen.core.tool.utils.SpringUtil; import com.qianwen.smartman.modules.cps.entity.Employee; import com.qianwen.smartman.modules.cps.entity.GlobalWcs; import com.qianwen.smartman.modules.cps.entity.Workstation; import com.qianwen.smartman.modules.cps.service.IEmployeeService; import com.qianwen.smartman.modules.cps.service.IGlobalWcsService; import com.qianwen.smartman.modules.cps.service.IWorkstationService; import com.qianwen.smartman.modules.mdc.entity.WorkstationFeedback; import com.qianwen.smartman.modules.mdc.entity.WorkstationFeedbackDetail; import com.qianwen.smartman.modules.mdc.enums.FeedbackStatus; import com.qianwen.smartman.modules.mdc.service.IWorkstationFeedbackService; import com.qianwen.smartman.modules.mdc.vo.WorkstationFeedBackDetailVO; public class WorkstationFeedBackDetailWrapper extends BaseEntityWrapper { private static final IWorkstationFeedbackService feedbackService = (IWorkstationFeedbackService) SpringUtil.getBean(IWorkstationFeedbackService.class); private static final IEmployeeService employeeService = (IEmployeeService) SpringUtil.getBean(IEmployeeService.class); private static final IGlobalWcsService globalWcsService = (IGlobalWcsService) SpringUtil.getBean(IGlobalWcsService.class); private static final IWorkstationService workstationService = (IWorkstationService) SpringUtil.getBean(IWorkstationService.class); public static WorkstationFeedBackDetailWrapper build() { return new WorkstationFeedBackDetailWrapper(); } public WorkstationFeedBackDetailVO entityVO(final WorkstationFeedbackDetail detail) { WorkstationFeedback feedback = feedbackService.cachedById(detail.getFeedbackId()); WorkstationFeedBackDetailVO vo = new WorkstationFeedBackDetailVO(); vo.setId(detail.getId()); vo.setFeedbackId(detail.getFeedbackId()); vo.setStartTime(detail.getStartTime()); vo.setEndTime(detail.getEndTime()); vo.setFeedbackTime(feedback.getFeedbackTime()); vo.setFeedbackDesc(feedback.getRemark()); Optional.ofNullable(globalWcsService.getByCode(detail.getWcs(), GlobalWcsTypeEnum.FEEDBACK)).map(GlobalWcs::getName) .ifPresent(vo::setWcsDesc); Optional.ofNullable(feedback.getFeedUser()).map(employeeService::cachedById).map(Employee::getName).ifPresent(vo::setFeedUser); Optional.ofNullable(feedback.getEndFeedUser()).map(employeeService::cachedById).map(Employee::getName).ifPresent(vo::setEndFeedUser); Optional.ofNullable(workstationService.getById(feedback.getWorkstationId())).ifPresent(station -> vo.setWorkstationName(station.getName())); vo.setCanDelete(Boolean.valueOf((!feedback.getStatus().equals(FeedbackStatus.SYNCING) && !feedback.getStatus().equals(FeedbackStatus.WAIT_SYNC)))); /* Optional map = Optional.ofNullable(globalWcsService.getByCode(detail.getWcs(), GlobalWcsTypeEnum.FEEDBACK)).map((v0) -> { return v0.getName(); }); vo.getClass(); map.ifPresent(this::setWcsDesc); Optional ofNullable = Optional.ofNullable(feedback.getFeedUser()); IEmployeeService iEmployeeService = employeeService; iEmployeeService.getClass(); Optional map2 = ofNullable.map((v1) -> { return r1.cachedById(v1); }).map((v0) -> { return v0.getName(); }); vo.getClass(); map2.ifPresent(this::setFeedUser); Optional ofNullable2 = Optional.ofNullable(feedback.getEndFeedUser()); IEmployeeService iEmployeeService2 = employeeService; iEmployeeService2.getClass(); Optional map3 = ofNullable2.map((v1) -> { return r1.cachedById(v1); }).map((v0) -> { return v0.getName(); }); vo.getClass(); map3.ifPresent(this::setEndFeedUser); Optional.ofNullable(workstationService.getById(feedback.getWorkstationId())).ifPresent(station -> { vo.setWorkstationName(station.getName()); }); vo.setCanDelete(Boolean.valueOf((feedback.getStatus().equals(FeedbackStatus.SYNCING) || feedback.getStatus().equals(FeedbackStatus.WAIT_SYNC)) ? false : true)); */ return vo; } }