【需求】完成大屏设备利用率

dev
zengchenxi 5 months ago
parent c1008e56db
commit 4d76e6e828

@ -31,7 +31,7 @@ public interface ScEquipmentMapper extends BaseMapperX<ScEquipmentDO> {
.betweenIfPresent(ScEquipmentDO::getShutdownTime, reqVO.getShutdownTime()) .betweenIfPresent(ScEquipmentDO::getShutdownTime, reqVO.getShutdownTime())
.eqIfPresent(ScEquipmentDO::getNum, reqVO.getNum()) .eqIfPresent(ScEquipmentDO::getNum, reqVO.getNum())
.eqIfPresent(ScEquipmentDO::getStatuss, reqVO.getStatuss()) .eqIfPresent(ScEquipmentDO::getStatuss, reqVO.getStatuss())
.orderByDesc(ScEquipmentDO::getId)); .orderByAsc(ScEquipmentDO::getId));
} }
@Select("CALL Down_Time(#{id}, #{startTime}, #{endTime})") @Select("CALL Down_Time(#{id}, #{startTime}, #{endTime})")

@ -15,6 +15,7 @@ import com.chanko.yunxi.mes.module.biz.dal.dataobject.plansub.PlanSubDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.processdesign.ProcessDesignDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.processdesign.ProcessDesignDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderSubDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderSubDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.scequipment.ScEquipmentDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.screen.ScreenDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.screen.ScreenDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.taskdispatch.TaskDispatchDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.taskdispatch.TaskDispatchDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.taskdispatch.TaskDispatchDetailDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.taskdispatch.TaskDispatchDetailDO;
@ -24,6 +25,7 @@ import com.chanko.yunxi.mes.module.biz.dal.mysql.plansub.PlanSubMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.processdesign.ProcessDesignMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.processdesign.ProcessDesignMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.projectorder.ProjectOrderMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.projectorder.ProjectOrderMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.projectorder.ProjectOrderSubMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.projectorder.ProjectOrderSubMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.scequipment.ScEquipmentMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.screen.ScreenMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.screen.ScreenMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.taskdispatch.TaskDispatchDetailMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.taskdispatch.TaskDispatchDetailMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.taskdispatch.TaskDispatchMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.taskdispatch.TaskDispatchMapper;
@ -79,6 +81,8 @@ public class ScreenServiceImpl implements ScreenService {
private ProcessDesignMapper processDesignMapper; private ProcessDesignMapper processDesignMapper;
@Resource @Resource
private PlanSubMapper planSubMapper; private PlanSubMapper planSubMapper;
@Resource
private ScEquipmentMapper scEquipmentMapper;
@Override @Override
public Long createScreen(ScreenSaveReqVO createReqVO) { public Long createScreen(ScreenSaveReqVO createReqVO) {
@ -180,6 +184,9 @@ public class ScreenServiceImpl implements ScreenService {
case QuantityOfEachProductProduced: case QuantityOfEachProductProduced:
buildQuantityOfEachProductProduced(screenDO); buildQuantityOfEachProductProduced(screenDO);
break; break;
case UtilizationRateOfEquipment:
buildUtilizationRateOfEquipment(screenDO);
break;
} }
}); });
@ -193,6 +200,30 @@ public class ScreenServiceImpl implements ScreenService {
return todayDataList; return todayDataList;
} }
/**
*
* "1D": ["equipmentNo","utilizationRate"]
* [["1#","2#","3#"],[45,35,60]]
*
* @param screenDO
*/
private void buildUtilizationRateOfEquipment(ScreenDO screenDO) {
LinkedList<LinkedList> resultData = new LinkedList<>();
LinkedList<String> equipmentNo = new LinkedList<>();
LinkedList<BigDecimal> utilizationRate = new LinkedList<>();
resultData.add(equipmentNo);
resultData.add(utilizationRate);
List<ScEquipmentDO> scEquipmentDOList = scEquipmentMapper.selectList(new LambdaQueryWrapper<ScEquipmentDO>(){{
orderByAsc(ScEquipmentDO::getId);
}});
for (ScEquipmentDO scEquipmentDO : scEquipmentDOList) {
equipmentNo.add(scEquipmentDO.getNmae());
utilizationRate.add(scEquipmentDO.getUtilizationRate());
}
screenDO.setData(JSON.toJSONString(resultData));
}
/** /**
* *
* "1D": ["product","sixDaysAgo","fiveDaysAgo","fourDaysAgo","threeDaysAgo","twoDaysAgo","oneDayAgo","today"] * "1D": ["product","sixDaysAgo","fiveDaysAgo","fourDaysAgo","threeDaysAgo","twoDaysAgo","oneDayAgo","today"]

Loading…
Cancel
Save