Commit 9dad0c39 authored by maoying's avatar maoying

合并developer代码解决冲突

parents 11c91ca0 9a8983d2
package com.yeejoin.equipmanage.common.datasync.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
@Data
@ApiModel(value = "详情返回数据", description = "设备数据")
public class FireEquipmentVO implements Serializable {
@ApiModelProperty(value = "所在建筑ID")
@TableField("buildid")
private String buildId;
private String parentId;
private String instanceId;
private String bizOrgCode;
}
......@@ -196,6 +196,9 @@ public class EquipmentSpecificAlarmLog extends BaseEntity {
@TableField(exist = false)
private String jcsConfirmUserName;
@ApiModelProperty(value = "画布中建筑ID", notes = "告警详情 配置点位里用")
@TableField(exist = false)
private String sourceId;
/**
* 颜色
*/
......
......@@ -3,6 +3,9 @@ package com.yeejoin.equipmanage.common.vo;
import cn.afterturn.easypoi.excel.annotation.Excel;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.alibaba.excel.metadata.BaseRowModel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
......@@ -18,6 +21,9 @@ import java.util.List;
* @date 2021-07-16
*/
@Data
@HeadRowHeight(30)
@ContentRowHeight(23)
@ColumnWidth(24)
@ApiModel(value = "MaintenanceResourceDataVo", description = "维保设施资源数据Vo")
public class MaintenanceResourceDataVo extends BaseRowModel {
......
......@@ -354,6 +354,7 @@ public class MaintenanceCompanyServiceImpl
LambdaQueryWrapper<MaintenanceCompany> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(MaintenanceCompany::getType, code);
queryWrapper.eq(MaintenanceCompany::getAmosId, userId);
queryWrapper.eq(MaintenanceCompany::getIsDelete, false);
return this.baseMapper.selectList(queryWrapper);
}
......
......@@ -94,8 +94,6 @@ public class CarController extends AbstractBaseController {
EquipmentQrcodeMapper equipmentQrcodeMapper;
@Resource(name = "productionQRCodeFactoryMap")
private Map<String, ProductionQRCode> messageHandMap;
@Autowired
EquipmentIotMqttReceiveConfig equipmentIotMqttReceiveConfig;
@Autowired
ICarLonAndLatDataService iCarLonAndLatDataService;
......@@ -183,7 +181,6 @@ public class CarController extends AbstractBaseController {
EquipmentSpecificSerivceImpl.registerMqttTopic(car.getIotCode(), equipmentIotMqttReceiveConfig);
car.setQrCode(QRCodeUtil.generateQRCode());
List<CarProperty> carPropertyList = car.getCarPropertyList();
if (carPropertyList.size() > 0) {
......@@ -330,7 +327,6 @@ public class CarController extends AbstractBaseController {
//用来解绑车辆
jcsFeign.getUserCar(car.getId(),car.getTeamId());
EquipmentSpecificSerivceImpl.registerMqttTopic(car.getIotCode(), equipmentIotMqttReceiveConfig);
Car oldCar = iCarService.getById(car.getId());
Car car1 = iCarService.updateOneById(car);
CarController controllerProxy = SpringUtils.getBean(CarController.class);
......@@ -363,30 +359,6 @@ public class CarController extends AbstractBaseController {
syncDataService.syncDeletedFireVehicle(carIds);
iCarService.dataSyncDeletedIds(carIds);
}
String[] topics = equipmentIotMqttReceiveConfig.adapter.getTopic();
// boolean flag = false;
// for (String id : idStrings) {
// String iotCode = iCarService.getById(id).getIotCode();
// if (StringUtil.isNotEmpty(iotCode)) {
// String prefix = iotCode.substring(0, 8);
// String suffix = iotCode.substring(8);
// String oldTopic = prefix + "/" + suffix + "/property";
// for (String topic : topics) {
// if (topic.equals(oldTopic)) {
// flag = true;
// break;
// }
// }
// if (flag) {
// try {
// equipmentIotMqttReceiveConfig.adapter.removeTopic(prefix + "/" + suffix + "/property");
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// }
// }
CarController controllerProxy = SpringUtils.getBean(CarController.class);
controllerProxy.refreshAllCount();
return new CommonResponse(SUCCESS);
......@@ -1099,33 +1071,11 @@ public class CarController extends AbstractBaseController {
public boolean delete(HttpServletRequest request, @RequestBody List<Long> idList) throws Exception {
List<Car> cars = iCarService.list(new QueryWrapper<Car>().in("id", idList));
String[] topics = equipmentIotMqttReceiveConfig.adapter.getTopic();
cars.forEach(car -> {
List<EquipmentOnCarAppVO> equipmentOnCarAppVOS = carMapper.selectEquipmentOnCarAppList(car.getId());
if (equipmentOnCarAppVOS.size() > 0) {
throw new BadRequest("有车载装备的车辆不能删除,请先卸载装备!");
}
boolean flag = false;
String iotCode = car.getIotCode();
if (StringUtil.isNotEmpty(car.getIotCode()) && iotCode.length() > 8) {
String prefix = iotCode.substring(0, 8);
String suffix = iotCode.substring(8);
String oldTopic = prefix + "/" + suffix + "/property";
for (String topic : topics) {
if (topic.equals(oldTopic)) {
flag = true;
break;
}
}
if (flag) {
try {
equipmentIotMqttReceiveConfig.adapter.removeTopic(prefix + "/" + suffix + "/property");
} catch (Exception e) {
e.printStackTrace();
}
}
}
});
boolean flag = iCarService.removeOneByIds(idList);
if (flag) {
......
package com.yeejoin.equipmanage.controller;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
import com.yeejoin.equipmanage.common.entity.vo.EquiplistSpecificBySystemVO;
......@@ -226,6 +223,22 @@ public class EquipmentSpecificController extends AbstractBaseController {
}
/**
* 获取instanceId和orgCode
*
* @param sourceId
* @return
*/
@RequestMapping(value = "/getInstanceIdAndOrgCode", method = RequestMethod.GET)
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "获取instanceId和orgCode", notes = "获取instanceId和orgCode")
public ResponseModel getInstanceIdAndOrgCode(@RequestParam Long sourceId) {
if (Objects.isNull(sourceId)) {
return CommonResponseUtil.success(null);
}
return CommonResponseUtil.success(equipmentSpecificSerivce.getInstanceIdAndOrgCode(sourceId));
}
/**
* @param like 设备名称或编码code
* @param notLike wl_equipment_category,code不包含(右%),多个用英文逗号隔开
* @param status wl_stock_detail.status
......
......@@ -5,6 +5,7 @@ import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import com.yeejoin.equipmanage.common.datasync.vo.FireEquipmentVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
......@@ -121,6 +122,8 @@ public interface EquipmentSpecificMapper extends BaseMapper<EquipmentSpecific> {
FireEquipment getEquipSpecificDetail(Long id);
FireEquipmentVO getEquipSpecificDetail2(Long id);
List<EquipmentCategory> getEquipSpeTypeByQrcode(@Param("qrCode") String qrCode);
List<FireEquipment> getEquipSpecificDetailsByEquipmentId(Long equipmentId);
......
......@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.equipmanage.common.datasync.entity.FireEquipment;
import com.yeejoin.equipmanage.common.datasync.vo.FireEquipmentVO;
import com.yeejoin.equipmanage.common.dto.EquipmentSpecificDto;
import com.yeejoin.equipmanage.common.dto.UserDto;
import com.yeejoin.equipmanage.common.entity.EquipmentSpecific;
......@@ -115,6 +116,14 @@ public interface IEquipmentSpecificSerivce extends IService<EquipmentSpecific> {
*/
FireEquipment getEquipSpecificDetail(EquipmentSpecific equipmentSpecific);
/**
* 获取instanceId和orgCode
*
* @param sourceId
* @return
*/
FireEquipmentVO getInstanceIdAndOrgCode(Long sourceId);
void equipSpecificDataSync(Long equipmentId);
List<FireEquipment> getEquipSpecificDetailsByEquipmentId(Long equipmentId);
......
package com.yeejoin.equipmanage.service.impl;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import com.sun.org.apache.bcel.internal.generic.RETURN;
import com.yeejoin.equipmanage.common.entity.*;
import com.yeejoin.equipmanage.common.utils.SpringUtils;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.equipmanage.common.entity.vo.EquipmentSpecificVo;
import com.yeejoin.equipmanage.common.enums.*;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
......@@ -27,18 +24,41 @@ import org.springframework.transaction.support.TransactionSynchronization;
import org.springframework.transaction.support.TransactionSynchronizationManager;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.equipmanage.common.entity.Equipment;
import com.yeejoin.equipmanage.common.entity.EquipmentDetail;
import com.yeejoin.equipmanage.common.entity.EquipmentIndex;
import com.yeejoin.equipmanage.common.entity.EquipmentManageEntity;
import com.yeejoin.equipmanage.common.entity.EquipmentSpecific;
import com.yeejoin.equipmanage.common.entity.EquipmentSpecificIndex;
import com.yeejoin.equipmanage.common.entity.EquipmentSystemSourceStatistics;
import com.yeejoin.equipmanage.common.entity.FireFightingSystemEntity;
import com.yeejoin.equipmanage.common.entity.Journal;
import com.yeejoin.equipmanage.common.entity.ManufacturerInfo;
import com.yeejoin.equipmanage.common.entity.Stock;
import com.yeejoin.equipmanage.common.entity.StockBill;
import com.yeejoin.equipmanage.common.entity.StockBillDetail;
import com.yeejoin.equipmanage.common.entity.StockDetail;
import com.yeejoin.equipmanage.common.entity.WarehouseStructure;
import com.yeejoin.equipmanage.common.entity.vo.EquipmentDetailDownloadVO;
import com.yeejoin.equipmanage.common.entity.vo.EquipmentSpecificVo;
import com.yeejoin.equipmanage.common.enums.BillContentEnum;
import com.yeejoin.equipmanage.common.enums.EquipStatusEnum;
import com.yeejoin.equipmanage.common.enums.JournalTypeEnum;
import com.yeejoin.equipmanage.common.enums.NoticeEnum;
import com.yeejoin.equipmanage.common.enums.StockBillTypeEnum;
import com.yeejoin.equipmanage.common.utils.ExcelUtils;
import com.yeejoin.equipmanage.common.utils.QRCodeUtil;
import com.yeejoin.equipmanage.common.utils.SpringUtils;
import com.yeejoin.equipmanage.common.utils.StringUtil;
import com.yeejoin.equipmanage.common.vo.StockDataVO;
import com.yeejoin.equipmanage.config.EquipmentIotMqttReceiveConfig;
import com.yeejoin.equipmanage.dto.EquipmentDetailDownloadTemplateDto;
import com.yeejoin.equipmanage.mapper.EquipmentDetailMapper;
import com.yeejoin.equipmanage.mapper.EquipmentMapper;
......@@ -96,8 +116,7 @@ public class StockServiceImpl extends ServiceImpl<StockMapper, Stock> implements
private ProductionQRCode equipmentProductionQRCode;
@Autowired
private IEquipmentSpecificIndexSerivce iEquipmentSpecificIndexSerivce;
@Autowired
EquipmentIotMqttReceiveConfig equipmentIotMqttReceiveConfig;
@Autowired
IManufacturerInfoService manufacturerInfoService;
......@@ -746,9 +765,6 @@ public class StockServiceImpl extends ServiceImpl<StockMapper, Stock> implements
}).collect(Collectors.toList());
if (!equipmentSpecificIndices.isEmpty()) {
iEquipmentSpecificIndexSerivce.saveBatch(equipmentSpecificIndices);
}
if (equipmentSpecific.getSingle() && StringUtil.isNotEmpty(equipmentSpecific.getIotCode())) {
EquipmentSpecificSerivceImpl.registerMqttTopic(equipmentSpecific.getIotCode(), equipmentIotMqttReceiveConfig);
}
}
......
package com.yeejoin.amos.maintenance.business.controller;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.maintenance.business.feign.JCSFeignClient;
import com.yeejoin.amos.maintenance.business.param.PlanTaskPageParam;
import com.yeejoin.amos.maintenance.business.service.intfc.IPlanTaskService;
import com.yeejoin.amos.maintenance.business.service.intfc.IPointService;
......@@ -15,6 +16,7 @@ import com.yeejoin.amos.maintenance.common.enums.PlanTaskOrderByEnum;
import com.yeejoin.amos.maintenance.core.common.request.CommonPageable;
import com.yeejoin.amos.maintenance.core.common.request.CommonRequest;
import com.yeejoin.amos.maintenance.core.framework.PersonIdentify;
import com.yeejoin.amos.maintenance.core.util.StringUtil;
import com.yeejoin.amos.maintenance.exception.YeeException;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -51,6 +53,9 @@ public class PlanTaskController extends AbstractBaseController {
@Autowired
IPointService pointService;
@Autowired
JCSFeignClient jcsFeignClient;
/**
* 计划执行查询
*
......@@ -203,6 +208,12 @@ public class PlanTaskController extends AbstractBaseController {
params.put("companyId", companyId);
params.put("orgCode", loginOrgCode);
params.put("userId", userId);
if (StringUtil.isNotEmpty(userId)) {
ResponseModel<String> idByAmosOrgId = jcsFeignClient.getIdByAmosOrgId(String.valueOf(userId));
if (StringUtil.isNotEmpty(idByAmosOrgId.getResult())) {
params.put("userId", idByAmosOrgId.getResult());
}
}
params.put("startTime", startTime);
params.put("endTime", endTime);
params.put("finishStatus", finishStatus);
......
......@@ -273,23 +273,23 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
log.info(strDate + " " + " 暂无待生成执行数据的计划");
return;
}
//bug 5980 待办任务消息应只触发执行中的任务,漏检的任务和未开始的任务不需要触发待办任务消息.
List<Plan> planListTwo = new ArrayList<>();
//将日期格式化
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm:ss");
LocalTime nowTime = LocalTime.parse(simpleDateFormat.format(new Date()));
for (Plan plan : planList) {
LocalTime dayTime = LocalTime.parse(plan.getDayTime());
// LocalTime plusHoursTime = dayTime.plusHours(1);
if (getTimeDifference(nowTime, dayTime)) {
planListTwo.add(plan);
}
}
if (planListTwo == null || planListTwo.size() <= 0) {
log.info(strDate + " " + " 暂无待生成执行数据的计划 (更改后,只执行进行中的数据)");
return;
}
planList = planListTwo;
// //bug 5980 待办任务消息应只触发执行中的任务,漏检的任务和未开始的任务不需要触发待办任务消息.
// List<Plan> planListTwo = new ArrayList<>();
// //将日期格式化
// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm:ss");
// LocalTime nowTime = LocalTime.parse(simpleDateFormat.format(new Date()));
// for (Plan plan : planList) {
// LocalTime dayTime = LocalTime.parse(plan.getDayTime());
//// LocalTime plusHoursTime = dayTime.plusHours(1);
// if (getTimeDifference(nowTime, dayTime)) {
// planListTwo.add(plan);
// }
// }
// if (planListTwo == null || planListTwo.size() <= 0) {
// log.info(strDate + " " + " 暂无待生成执行数据的计划 (更改后,只执行进行中的数据)");
// return;
// }
// planList = planListTwo;
//2.循环遍历执行
HashMap<String, Object> paramMap = new HashMap<String, Object>();
for (Plan plan : planList) {
......
......@@ -801,6 +801,10 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
}
public void sendMessage(Plan plan) throws Exception {
Toke toke= remoteSecurityService.getServerToken();
RequestContext.setToken(toke.getToke());
RequestContext.setProduct(toke.getProduct());
RequestContext.setAppKey(toke.getAppKey());
// 查询检查对象对应防火监督负责人id
List<String> extraUserIds = Lists.newArrayList();
List<Point> pointList = pointMapper.getPointByPlanId(String.valueOf(plan.getId()));
......
......@@ -14,6 +14,16 @@
and EXISTS (SELECT distinct fi.instance_id from wl_form_instance fi where fi.instance_id = sou.source_id)
limit 1
) AS sceneId,
(
SELECT
sou.source_id
FROM
wl_source_scene sou
WHERE
find_in_set(ala.equipment_specific_id,sou.point_in_scene)>0
and EXISTS (SELECT distinct fi.instance_id from wl_form_instance fi where fi.instance_id = sou.source_id)
limit 1
) AS sourceId,
ala.equipment_specific_id,
spe.code AS equipmentSpecificCode,
ala.equipment_specific_index_name,
......
......@@ -777,6 +777,21 @@
WHERE
es.id = #{id}
</select>
<select id="getEquipSpecificDetail2"
resultType="com.yeejoin.equipmanage.common.datasync.vo.FireEquipmentVO">
SELECT
ws.source_id AS buildid,
ws.parent_id AS parentId,
ws.biz_org_code AS bizOrgCode
FROM
wl_equipment_specific es
LEFT JOIN wl_stock_detail sd ON sd.equipment_specific_id = es.id
LEFT JOIN wl_warehouse_structure ws ON ws.id = sd.warehouse_structure_id
WHERE
es.id = #{id}
</select>
<select id="getEquipSpecificDetailsByEquipmentId"
resultType="com.yeejoin.equipmanage.common.datasync.entity.FireEquipment">
SELECT
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment