Commit 32b80edf LN

equipment 看板返回带组名称格式。

1 个父辈 bfff7dd1
...@@ -5,12 +5,15 @@ import com.neotel.smfcore.core.dashboard.bean.dto.box.MesInfoDto; ...@@ -5,12 +5,15 @@ import com.neotel.smfcore.core.dashboard.bean.dto.box.MesInfoDto;
import com.neotel.smfcore.core.device.bean.StatusBean; import com.neotel.smfcore.core.device.bean.StatusBean;
import com.neotel.smfcore.core.device.util.DataCache; import com.neotel.smfcore.core.device.util.DataCache;
import com.neotel.smfcore.core.equipment.enums.EquipmentType; import com.neotel.smfcore.core.equipment.enums.EquipmentType;
import com.neotel.smfcore.core.equipment.rest.dto.EquipGroupDto;
import com.neotel.smfcore.core.equipment.rest.dto.EquipKanbanDto;
import com.neotel.smfcore.core.equipment.rest.dto.NsViewDto; import com.neotel.smfcore.core.equipment.rest.dto.NsViewDto;
import com.neotel.smfcore.core.equipment.util.EquipmentCache; import com.neotel.smfcore.core.equipment.util.EquipmentCache;
import com.neotel.smfcore.core.equipment.bean.EquipMsg; import com.neotel.smfcore.core.equipment.bean.EquipMsg;
import com.neotel.smfcore.core.equipment.bean.EquipStatusBean; import com.neotel.smfcore.core.equipment.bean.EquipStatusBean;
import com.neotel.smfcore.core.equipment.rest.dto.EquipStatusDto; import com.neotel.smfcore.core.equipment.rest.dto.EquipStatusDto;
import com.neotel.smfcore.core.equipment.service.po.Equipment; import com.neotel.smfcore.core.equipment.service.po.Equipment;
import com.neotel.smfcore.core.language.util.MessageUtils;
import com.neotel.smfcore.core.message.enums.MessageType; import com.neotel.smfcore.core.message.enums.MessageType;
import com.neotel.smfcore.core.storage.enums.DeviceType; import com.neotel.smfcore.core.storage.enums.DeviceType;
import com.neotel.smfcore.core.storage.service.po.Storage; import com.neotel.smfcore.core.storage.service.po.Storage;
...@@ -31,6 +34,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -31,6 +34,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
@Slf4j @Slf4j
...@@ -49,10 +53,74 @@ public class EquipViewController { ...@@ -49,10 +53,74 @@ public class EquipViewController {
@Autowired @Autowired
private TMSCommunicator tmsCommunicator; private TMSCommunicator tmsCommunicator;
// @ApiOperation("获取看板数据")
// @GetMapping
// @PreAuthorize("@el.check('equipmentView:info')")
// public List<EquipStatusDto> info(HttpServletRequest servletRequest) {
//
// Locale locale=servletRequest.getLocale();
// List<EquipStatusDto> resultList=new ArrayList<>();
// Map<String,Equipment> allEquipList= equipmentCache.getAllEquipment();
// for (Equipment equip :
// allEquipList.values()) {
// EquipStatusDto dto=new EquipStatusDto(equip.getId(),equip.getName(),equip.getCid(),false,0,"",equip.getType(),false);
// if((!equip.isAPIEquip())|| (equip.isActivate())){
// dto.setActivate(true);
// }
// EquipStatusBean bean= EquipStatusUtil.getStatusBean(equip.getCid());
// if(bean!=null){
// if(bean.timeOut()){
// dto.setOnLine(false);
// }else{
// dto.setOnLine(true);
// dto.setStatus(bean.getStatus());
// dto.setMsg(bean.getShowMsg(locale));
// }
// }
//
// if(equip.getType().equalsIgnoreCase(EquipmentType.T_SOLUTION.name())){
// if(tmsCommunicator.isConnected()){
// dto.setOnLine(true);
// dto.setStatus(1);
// }
// } else if (equip.getType().equalsIgnoreCase(EquipmentType.NEXIM.name())){
// if(dto.isActivate()) {
// //配置了且激活就显示在线
// FujiConfig config = dataCache.getCache(FujiCacheConfig.FujiConfig_Cache_Name);
// if (config != null) {
//// dto.setStatus(1);
// }
// }
// }
//
// resultList.add(dto);
// }
//
// //再把NLL加进去
// Collection<Storage> storages = dataCache.getAllStorage().values();
// for (Storage storage : storages) {
// if (storage.getType().equals(DeviceType.NLL.name())){
// EquipStatusDto dto=new EquipStatusDto(storage.getId(),storage.getName(),storage.getCid(),false,0,"",storage.getType(),false);
// StatusBean bean = DevicesStatusUtil.getStatusBean(storage.getCid());
// if (bean == null || bean.timeOut()){
// dto.setOnLine(false);
// dto.setStatus(0);
// } else {
// dto.setOnLine(true);
// dto.setStatus(bean.getStatus());
// }
// resultList.add(dto);
// }
// }
// return resultList;
// }
@ApiOperation("获取看板数据") @ApiOperation("获取看板数据")
@GetMapping @GetMapping
@PreAuthorize("@el.check('equipmentView:info')") @PreAuthorize("@el.check('equipmentView:info')")
public List<EquipStatusDto> info(HttpServletRequest servletRequest) { public EquipKanbanDto info(HttpServletRequest servletRequest) {
Locale locale=servletRequest.getLocale(); Locale locale=servletRequest.getLocale();
List<EquipStatusDto> resultList=new ArrayList<>(); List<EquipStatusDto> resultList=new ArrayList<>();
...@@ -91,24 +159,49 @@ public class EquipViewController { ...@@ -91,24 +159,49 @@ public class EquipViewController {
resultList.add(dto); resultList.add(dto);
} }
//
// //再把NLL加进去
// Collection<Storage> storages = dataCache.getAllStorage().values();
// for (Storage storage : storages) {
// if (storage.getType().equals(DeviceType.NLL.name())){
// EquipStatusDto dto=new EquipStatusDto(storage.getId(),storage.getName(),storage.getCid(),false,0,"",storage.getType(),false);
// StatusBean bean = DevicesStatusUtil.getStatusBean(storage.getCid());
// if (bean == null || bean.timeOut()){
// dto.setOnLine(false);
// dto.setStatus(0);
// } else {
// dto.setOnLine(true);
// dto.setStatus(bean.getStatus());
// }
// resultList.add(dto);
// }
// }
//再把NLL加进去 // 把 pana,nexim,t-solution放到 Pick and Place Machine 里面
Collection<Storage> storages = dataCache.getAllStorage().values(); // Neo Scan 包括 Neo Scan 和 Scan Plus
for (Storage storage : storages) { List<EquipGroupDto> list=new ArrayList<>();
if (storage.getType().equals(DeviceType.NLL.name())){ //三个组
EquipStatusDto dto=new EquipStatusDto(storage.getId(),storage.getName(),storage.getCid(),false,0,"",storage.getType(),false); List<EquipStatusDto> apiList=resultList.stream().filter(dto->EquipmentType.apiTypeList().contains(dto.getType())).collect(Collectors.toList());
StatusBean bean = DevicesStatusUtil.getStatusBean(storage.getCid()); if(apiList.size()>0){
if (bean == null || bean.timeOut()){ EquipGroupDto dto=new EquipGroupDto(MessageUtils.getText("smfcore.equipment.view.apigroup",locale,"Pick and Place Machine"),apiList);
dto.setOnLine(false); list.add(dto);
dto.setStatus(0);
} else {
dto.setOnLine(true);
dto.setStatus(bean.getStatus());
} }
resultList.add(dto); List<EquipStatusDto> nsList=resultList.stream().filter(dto->EquipmentType.nsList().contains(dto.getType())).collect(Collectors.toList());
if(nsList.size()>0){
EquipGroupDto dto=new EquipGroupDto(MessageUtils.getText("smfcore.equipment.view.nsgroup",locale,"Neo Scan"),nsList);
list.add(dto);
} }
List<String> otherType= new ArrayList<>();
otherType.addAll(EquipmentType.nsList());
otherType.addAll(EquipmentType.apiTypeList() );
List<EquipStatusDto> otherList=resultList.stream().filter(dto->otherType.contains(dto.getType())==false).collect(Collectors.toList());
if(otherList.size()>0){
EquipGroupDto dto=new EquipGroupDto("",otherList);
list.add(dto);
} }
return resultList;
EquipKanbanDto ret= new EquipKanbanDto(list);
return ret;
} }
@ApiOperation("获取NS看板数据") @ApiOperation("获取NS看板数据")
......
package com.neotel.smfcore.core.equipment.rest.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;
import java.util.List;
@Getter
@Setter
@AllArgsConstructor
public class EquipGroupDto {
@ApiModelProperty("组名称")
private String groupName;
@ApiModelProperty("设备列表")
private List<EquipStatusDto> equipList;
// @ApiModelProperty("ID")
// private String groupId;
// @ApiModelProperty("组类型:=1时点击组名称进入料架分组界面")
// private int groupType;
}
\ No newline at end of file \ No newline at end of file
package com.neotel.smfcore.core.equipment.rest.dto;
import com.neotel.smfcore.core.kanban.rest.bean.dto.GroupStatusDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class EquipKanbanDto {
@ApiModelProperty("组列表")
private List<EquipGroupDto> groupList;
}
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!