|
@@ -319,6 +319,174 @@ public class TEquipmentController {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "机器列表")
|
|
|
+ @PostMapping("/list")
|
|
|
+ public ResponseModel<IPage<?>> list(@RequestBody EquipmentParam param) {
|
|
|
+ UserDetailBO userDetailBO = Optional.ofNullable(tokenManager.getLoginUserDetails())
|
|
|
+ .orElseThrow(() -> new BizException(ResponseCodesEnum.L0001));
|
|
|
+ String adminId = userDetailBO.getId().toString();
|
|
|
+ int authId = Integer.parseInt(adminId);
|
|
|
+ LambdaQueryWrapper<TEquipment> query = Wrappers.lambdaQuery();
|
|
|
+ TAdmin admin = tAdminService.getById(authId);
|
|
|
+ // 条件参数
|
|
|
+ String companyType = param.getCompanyType();
|
|
|
+ String clientId = param.getClientId();
|
|
|
+ String adminName = param.getAdminName();
|
|
|
+ String equipmentName = param.getEquipmentName();
|
|
|
+ String areaName = param.getAreaName();
|
|
|
+ String eqeStatus = param.getEqeStatus();
|
|
|
+ String machineType = param.getMachineType();
|
|
|
+ String equimentType = param.getEquimentType();
|
|
|
+ String labelId = param.getLabelId();
|
|
|
+ String todayDate = param.getTodayDate();
|
|
|
+ Boolean isAbroad = param.getIsAbroad();
|
|
|
+ long current = param.getCurrent();
|
|
|
+ long size = param.getSize();
|
|
|
+ IPage<TEquipmentDTO> iPageDTO = new Page<>(current, size, true);
|
|
|
+
|
|
|
+ if (authId == 2738) {
|
|
|
+ // 申泽管理员
|
|
|
+ companyType = "0";
|
|
|
+ } else if (authId == 2739) {
|
|
|
+ // 七云管理员
|
|
|
+ companyType = "1";
|
|
|
+ }
|
|
|
+ Integer type = admin.getType();
|
|
|
+ if (type > 1) {
|
|
|
+ if (type == 2) {
|
|
|
+ query.eq(TEquipment::getAdminId, authId);
|
|
|
+ }
|
|
|
+ if (type == 3) {
|
|
|
+ //查找属于这个商家子账户的设备
|
|
|
+ TAdminEquipment adminEquipment = tAdminEquipmentService.getById(admin.getId());
|
|
|
+ if (adminEquipment.getType().equals("0")) {
|
|
|
+ //全部机器
|
|
|
+ query.eq(TEquipment::getAdminId, admin.getParentId());
|
|
|
+ } else {
|
|
|
+ String equipmentIds = adminEquipment.getEquipmentIds();
|
|
|
+ String[] strings = equipmentIds.split(",");
|
|
|
+ query.in(TEquipment::getId, strings);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(clientId)) {
|
|
|
+ query.like(TEquipment::getClientId, clientId);
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(adminName) && !"sysMgtAcc".equals(adminName)) {
|
|
|
+ LambdaQueryWrapper<TAdmin> adminQuery = Wrappers.lambdaQuery();
|
|
|
+ adminQuery.eq(TAdmin::getUsername, adminName);
|
|
|
+ TAdmin tAdmin = tAdminService.getOne(adminQuery);
|
|
|
+ if (tAdmin == null) {
|
|
|
+ return R.ok(iPageDTO);
|
|
|
+ }
|
|
|
+ query.eq(TEquipment::getAdminId, tAdmin.getId());
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(equipmentName)) {
|
|
|
+ query.like(TEquipment::getName, equipmentName);
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(areaName)) {
|
|
|
+ query.like(TEquipment::getFullName, areaName);
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(eqeStatus)) {
|
|
|
+ query.eq(TEquipment::getEqeStatus, eqeStatus);
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(machineType)) {
|
|
|
+ query.eq(TEquipment::getMachineType, machineType);
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(equimentType)) {
|
|
|
+ query.eq(TEquipment::getEquimentType, equimentType);
|
|
|
+ }
|
|
|
+ // 公司平台
|
|
|
+ if (StringUtils.isNotEmpty(companyType)) {
|
|
|
+ if (companyType.equals("0")) {
|
|
|
+// query.isNull(TEquipment::getCompanyType)
|
|
|
+// .or().eq(TEquipment::getCompanyType, companyType);
|
|
|
+ query.ne(TEquipment::getCompanyType, "1");
|
|
|
+ } else {
|
|
|
+ query.eq(TEquipment::getCompanyType, companyType);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 分组ID
|
|
|
+ if (StringUtils.isNotEmpty(labelId)) {
|
|
|
+ if (NumberUtil.isInteger(labelId)) {
|
|
|
+ TLabel label = labelService.getById(labelId);
|
|
|
+ String equipmentIds = label.getEquipmentIds();
|
|
|
+ equipmentIds = equipmentIds.replace("\"", "").replace("[", "").replace("]", "");
|
|
|
+ String[] split = equipmentIds.split(",");
|
|
|
+ query.in(TEquipment::getId, split);
|
|
|
+ } else if (ConfigConsts.ABNORMAL.equals(labelId)) {
|
|
|
+ query.eq(TEquipment::getIsAlarm, 1);
|
|
|
+ } else if (ConfigConsts.ON.equals(labelId)) {
|
|
|
+ query.eq(TEquipment::getEqeStatus, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // todo 是否海外
|
|
|
+ query.orderByDesc(TEquipment::getCreateDate);
|
|
|
+ Page<TEquipment> page = new Page<>(current, size, true);
|
|
|
+ IPage<TEquipment> iPage = tEquipmentService.page(page, query);
|
|
|
+ iPageDTO.setCurrent(iPage.getCurrent());
|
|
|
+ iPageDTO.setPages(iPage.getPages());
|
|
|
+ iPageDTO.setSize(iPage.getSize());
|
|
|
+ iPageDTO.setTotal(iPage.getTotal());
|
|
|
+ List<TEquipment> list = iPage.getRecords();
|
|
|
+ List<TEquipmentDTO> equipmentDTOList = list.stream().map(equipment -> {
|
|
|
+ TEquipmentDTO equipmentDTO = new TEquipmentDTO();
|
|
|
+ BeanUtils.copyPropertiesIgnoreNull(equipment, equipmentDTO, true);
|
|
|
+ return equipmentDTO;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ for (TEquipmentDTO equipmentDTO : equipmentDTOList) {
|
|
|
+ LocalDateTime dateTime = LocalDateTime.parse(todayDate + "T00:00:00");
|
|
|
+ // 获取前一天的0点时间
|
|
|
+ LocalDateTime startDateTime = dateTime.minusDays(1).with(LocalTime.MIN);
|
|
|
+ // 获取当天的24点时间
|
|
|
+ LocalDateTime endDateTime = dateTime.with(LocalTime.MAX);
|
|
|
+ LambdaQueryWrapper<TAlarmRecord> query1 = Wrappers.lambdaQuery();
|
|
|
+ query1.eq(TAlarmRecord::getEquipmentId, equipmentDTO.getId());
|
|
|
+ query1.eq(TAlarmRecord::getIsEliminate, 0);
|
|
|
+ query1.gt(TAlarmRecord::getOccurrenceTime, startDateTime);
|
|
|
+ query1.le(TAlarmRecord::getOccurrenceTime, endDateTime);
|
|
|
+ query1.orderByDesc(TAlarmRecord::getLevel).orderByDesc(TAlarmRecord::getOccurrenceTime);
|
|
|
+ List<TAlarmRecord> alarmRecordList = tAlarmRecordService.list(query1);
|
|
|
+ if (!alarmRecordList.isEmpty()) {
|
|
|
+ equipmentDTO.setHasTodayAlarm(true);
|
|
|
+ equipmentDTO.setAlarmList(alarmRecordList);
|
|
|
+ } else {
|
|
|
+ equipmentDTO.setHasTodayAlarm(false);
|
|
|
+ }
|
|
|
+ TEquipmentDesc equipmentDesc = equipmentDescService.getById(equipmentDTO.getId());
|
|
|
+ if (equipmentDesc != null) {
|
|
|
+ equipmentDTO.setRedSugar(equipmentDesc.getRedSugar());
|
|
|
+ equipmentDTO.setWasteWater(equipmentDesc.getWasteWater());
|
|
|
+ equipmentDTO.setWater(equipmentDesc.getWater());
|
|
|
+ equipmentDTO.setYellowSugar(equipmentDesc.getYellowSugar());
|
|
|
+ equipmentDTO.setBlueSugar(equipmentDesc.getBlueSugar());
|
|
|
+ equipmentDTO.setIsMaterialUse(equipmentDesc.getIsMaterialUse());
|
|
|
+ equipmentDTO.setStick(equipmentDesc.getStick());
|
|
|
+ equipmentDTO.setWhiteSugar(equipmentDesc.getWhiteSugar());
|
|
|
+ equipmentDTO.setSleepDesc(equipmentDesc.getSleepDesc());
|
|
|
+ equipmentDTO.setOutDoor(equipmentDesc.getOutDoor());
|
|
|
+ equipmentDTO.setInDoor(equipmentDesc.getInDoor());
|
|
|
+ equipmentDTO.setCupQuantity(equipmentDesc.getCupQuantity());
|
|
|
+ equipmentDTO.setStirTm(equipmentDesc.getStirTm());
|
|
|
+ equipmentDTO.setCornGeneratorTm(equipmentDesc.getCornGeneratorTm());
|
|
|
+ equipmentDTO.setNumberOne(equipmentDesc.getNumberOne());
|
|
|
+ equipmentDTO.setCandyGeneratorTm(equipmentDesc.getCandyGeneratorTm());
|
|
|
+ equipmentDTO.setOutsideHd(equipmentDesc.getOutsideHd());
|
|
|
+ equipmentDTO.setOutsideTm(equipmentDesc.getOutsideTm());
|
|
|
+ equipmentDTO.setDiyFlowerStatus(equipmentDesc.getDiyFlowerStatus());
|
|
|
+ equipmentDTO.setWorkingMode(equipmentDesc.getWorkingMode());
|
|
|
+ equipmentDTO.setCleanFunction(equipmentDesc.getCleanFunction());
|
|
|
+ equipmentDTO.setTaxStatus(equipmentDesc.getTaxStatus());
|
|
|
+ equipmentDTO.setTaxRate(equipmentDesc.getTaxRate());
|
|
|
+ equipmentDTO.setBanPaper(equipmentDesc.getBanPaper());
|
|
|
+ equipmentDTO.setIsAbroad(equipmentDesc.getIsAbroad());
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ iPageDTO.setRecords(equipmentDTOList);
|
|
|
+ return R.ok(iPageDTO);
|
|
|
+ }
|
|
|
+
|
|
|
@ApiOperation(value = "id查找机器详情")
|
|
|
@PostMapping("/findById")
|
|
|
public ResponseModel<?> findById(@RequestParam Long id) {
|
|
@@ -1992,5 +2160,7 @@ public class TEquipmentController {
|
|
|
return R.ok();
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|