2025-12-09 15:33:39 +08:00
|
|
|
|
package com.zhgd.xmgl.call;
|
|
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
|
|
import cn.hutool.core.convert.Convert;
|
|
|
|
|
|
import cn.hutool.core.date.DateTime;
|
|
|
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
|
import com.google.common.collect.Lists;
|
|
|
|
|
|
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.electrical.entity.ElectricalData;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.electrical.entity.ElectricalDev;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.environment.entity.DustNoiseData;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.environment.entity.EnvironmentDev;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.environment.service.IDustNoiseDataService;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.environment.service.IEnvironmentDevService;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.worker.entity.*;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.worker.service.ITeamInfoService;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.worker.service.IUfaceDevService;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.worker.service.IWorkerCertificateService;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.worker.service.IWorkerTypeService;
|
|
|
|
|
|
import com.zhgd.xmgl.modules.worker.service.impl.EnterpriseInfoServiceImpl;
|
|
|
|
|
|
import com.zhgd.xmgl.util.*;
|
|
|
|
|
|
import com.zhgd.xmgl.call.util.jc.AESUtil;
|
|
|
|
|
|
import com.zhgd.xmgl.call.util.jc.JcHttpUtil;
|
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
|
import net.javacrumbs.shedlock.core.SchedulerLock;
|
|
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
|
import org.springframework.context.annotation.Lazy;
|
|
|
|
|
|
import org.springframework.scheduling.annotation.Async;
|
|
|
|
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
|
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
|
import java.util.*;
|
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 转发机场
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Slf4j
|
|
|
|
|
|
@Component
|
|
|
|
|
|
@RestController
|
|
|
|
|
|
@RequestMapping("/xmgl/task")
|
|
|
|
|
|
public class JcCall {
|
|
|
|
|
|
@Lazy
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
private EnterpriseInfoServiceImpl enterpriseInfoService;
|
|
|
|
|
|
@Lazy
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
private ITeamInfoService teamInfoService;
|
|
|
|
|
|
@Lazy
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
private IWorkerTypeService workerTypeService;
|
|
|
|
|
|
@Lazy
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
private IWorkerCertificateService workerCertificateService;
|
|
|
|
|
|
@Lazy
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
private IUfaceDevService ufaceDevService;
|
|
|
|
|
|
@Lazy
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
private IEnvironmentDevService environmentDevService;
|
|
|
|
|
|
@Lazy
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
private IDustNoiseDataService dustNoiseDataService;
|
|
|
|
|
|
@Lazy
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
private EnvironmentUtil environmentUtil;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 保存劳务人员
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param workerInfo
|
|
|
|
|
|
*/
|
|
|
|
|
|
public void sendSaveWorkerInfoByJc(WorkerInfo workerInfo) {
|
|
|
|
|
|
if (!JcHttpUtil.isJcProject(workerInfo.getProjectSn())) {
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (StrUtil.isBlank(workerInfo.getIdCard())) {
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
|
|
|
JcHttpUtil.jcPushWorker(getUserSyncRequest(workerInfo, JcHttpUtil.UserSyncRequest.SyncTypeEnum.ADD));
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
log.error("", e);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private JcHttpUtil.UserSyncRequest getUserSyncRequest(WorkerInfo workerInfo, String opt) throws Exception {
|
|
|
|
|
|
JcHttpUtil.UserSyncRequest userSyncRequest = new JcHttpUtil.UserSyncRequest();
|
|
|
|
|
|
userSyncRequest.setProjectId(JcHttpUtil.getJcProjectId());
|
|
|
|
|
|
userSyncRequest.setType(opt);
|
|
|
|
|
|
JcHttpUtil.UserSyncRequest.UserForm form = new JcHttpUtil.UserSyncRequest.UserForm();
|
|
|
|
|
|
form.setEmpCenterId(Convert.toStr(workerInfo.getId()));
|
|
|
|
|
|
form.setEmpName(workerInfo.getWorkerName());
|
|
|
|
|
|
Map<String, String> birthdayAgeSexMap = IdCardUtils.getBirthdayAgeSex(workerInfo.getIdCard());
|
|
|
|
|
|
form.setAge(Convert.toInt(birthdayAgeSexMap.get("age")));
|
|
|
|
|
|
form.setGender(workerInfo.getSex());
|
|
|
|
|
|
if (StrUtil.isNotBlank(workerInfo.getPhoneNumber())) {
|
|
|
|
|
|
form.setPhone(AESUtil.Encrypt(workerInfo.getPhoneNumber(), AESUtil.SECRET));
|
|
|
|
|
|
}
|
|
|
|
|
|
if (StrUtil.isNotBlank(workerInfo.getIdCardDownPhotoUrl())) {
|
|
|
|
|
|
form.setHeadImg(PathUtil.getServerUrl() + "/image/" + workerInfo.getIdCardDownPhotoUrl());
|
|
|
|
|
|
}
|
|
|
|
|
|
form.setNation(workerInfo.getNation());
|
|
|
|
|
|
form.setIdcardType(1);
|
|
|
|
|
|
form.setIdcardNo(AESUtil.Encrypt(workerInfo.getIdCard(), AESUtil.SECRET));
|
|
|
|
|
|
form.setCorpCenterId(Convert.toStr(workerInfo.getEnterpriseId()));
|
|
|
|
|
|
Optional.ofNullable(enterpriseInfoService.getById(workerInfo.getEnterpriseId())).ifPresent(enterpriseInfo -> {
|
|
|
|
|
|
form.setCorpName(enterpriseInfo.getEnterpriseName());
|
|
|
|
|
|
});
|
|
|
|
|
|
form.setWorkerType(getWorkerType(workerInfo.getPersonType()));
|
|
|
|
|
|
form.setWorkType(getWorkType(workerInfo));
|
|
|
|
|
|
form.setLeaderFlag(getLeaderFlag(workerInfo));
|
|
|
|
|
|
form.setPostState(workerInfo.getInserviceType());
|
|
|
|
|
|
if (StrUtil.isNotBlank(workerInfo.getEnterDate())) {
|
|
|
|
|
|
form.setEnterTime(DateUtil.formatDateTime(DateUtil.parseDate(workerInfo.getEnterDate())));
|
|
|
|
|
|
}
|
|
|
|
|
|
// form.setUserType("");
|
|
|
|
|
|
form.setCreateDate(DateUtil.formatDateTime(workerInfo.getAddTime()));
|
|
|
|
|
|
form.setUpdateDate(DateUtil.formatDateTime(workerInfo.getUpdateTime()));
|
|
|
|
|
|
form.setDeleteFlag(0);
|
|
|
|
|
|
form.setNeedEscape("0");
|
|
|
|
|
|
form.setCertificates(getCertificates(workerInfo));
|
|
|
|
|
|
userSyncRequest.setSmartUserFormList(Collections.singletonList(form));
|
|
|
|
|
|
return userSyncRequest;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private List<JcHttpUtil.UserSyncRequest.CertificateInfo> getCertificates(WorkerInfo workerInfo) {
|
|
|
|
|
|
List<EntityMap> certificateList = workerCertificateService.selectWorkerCertificateList(new MapBuilder<String, Object>()
|
|
|
|
|
|
.put("workerId", workerInfo.getId())
|
|
|
|
|
|
.build());
|
|
|
|
|
|
return certificateList.stream().filter(o -> CertUtil.isSpecial(o.get("certificateTypeName"))).map(o -> {
|
|
|
|
|
|
JcHttpUtil.UserSyncRequest.CertificateInfo certificateInfo = new JcHttpUtil.UserSyncRequest.CertificateInfo();
|
|
|
|
|
|
if (StrUtil.isNotBlank(o.get("photoUrl"))) {
|
|
|
|
|
|
try {
|
2025-12-09 16:55:48 +08:00
|
|
|
|
certificateInfo.setCertificate(FileUtils.getOnlineUrl(o.get("photoUrl")));
|
2025-12-09 15:33:39 +08:00
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
certificateInfo.setValidStartTime(o.get("issueTime"));
|
|
|
|
|
|
certificateInfo.setValidEndTime(o.get("effectTime"));
|
|
|
|
|
|
return certificateInfo;
|
|
|
|
|
|
}).collect(Collectors.toList());
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private Boolean getLeaderFlag(WorkerInfo workerInfo) {
|
|
|
|
|
|
//人员类型 1、劳务人员 2、管理人员,3临时人员
|
|
|
|
|
|
if (Objects.equals(workerInfo.getPersonType(), 1)) {
|
|
|
|
|
|
TeamInfo teamInfo = teamInfoService.getById(workerInfo.getTeamId());
|
|
|
|
|
|
if (teamInfo != null && Objects.equals(workerInfo.getIdCard(), teamInfo.getLeaderIdCard())) {
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private String getWorkType(WorkerInfo workerInfo) {
|
|
|
|
|
|
Integer personType = workerInfo.getPersonType();
|
|
|
|
|
|
//人员类型 1、劳务人员 2、管理人员,3临时人员
|
|
|
|
|
|
if (Objects.equals(personType, 1)) {
|
|
|
|
|
|
TeamInfo teamInfo = teamInfoService.getById(workerInfo.getTeamId());
|
|
|
|
|
|
if (teamInfo != null) {
|
|
|
|
|
|
WorkerType workerType = workerTypeService.getById(teamInfo.getWorkerTypeId());
|
|
|
|
|
|
JcHttpUtil.UserSyncRequest.WorkTypeEnum typeEnum = JcHttpUtil.UserSyncRequest.WorkTypeEnum.getByNameOrDefault(workerType.getTypeName());
|
|
|
|
|
|
return typeEnum.getCode();
|
|
|
|
|
|
}
|
|
|
|
|
|
} else if (Objects.equals(personType, 2)) {
|
|
|
|
|
|
if (Objects.equals(workerInfo.getJobType(), "1")) {
|
|
|
|
|
|
return JcHttpUtil.UserSyncRequest.WorkTypeEnum.PROJECT_MANAGER.getCode();
|
|
|
|
|
|
} else {
|
|
|
|
|
|
return JcHttpUtil.UserSyncRequest.WorkTypeEnum.MANAGEMENT_PERSONNEL.getCode();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return JcHttpUtil.UserSyncRequest.WorkTypeEnum.getDefaultCode();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private String getWorkerType(Integer personType) {
|
|
|
|
|
|
//人员类型 1、劳务人员 2、管理人员,3临时人员
|
|
|
|
|
|
//1:管理人员 2:建筑工人 3:其他
|
|
|
|
|
|
if (Objects.equals(personType, 1)) {
|
|
|
|
|
|
return "2";
|
|
|
|
|
|
} else if (Objects.equals(personType, 2)) {
|
|
|
|
|
|
return "1";
|
|
|
|
|
|
} else {
|
|
|
|
|
|
return "3";
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 删除劳务人员
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param workerInfo
|
|
|
|
|
|
*/
|
|
|
|
|
|
public void sendDeleteWorkerInfoByJc(WorkerInfo workerInfo) {
|
|
|
|
|
|
if (!JcHttpUtil.isJcProject(workerInfo.getProjectSn())) {
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (StrUtil.isBlank(workerInfo.getIdCard())) {
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
|
|
|
JcHttpUtil.jcPushWorker(getUserSyncRequest(workerInfo, JcHttpUtil.UserSyncRequest.SyncTypeEnum.DELETE));
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
log.error("", e);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 发送考勤
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param workerInfo
|
|
|
|
|
|
* @param workerAttendance
|
|
|
|
|
|
*/
|
|
|
|
|
|
public void sendAddWorkerPassRecord(WorkerInfo workerInfo, WorkerAttendance workerAttendance) {
|
|
|
|
|
|
if (!JcHttpUtil.isJcProject(workerInfo.getProjectSn())) {
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
|
|
|
JcHttpUtil.jcPushWorkerPassRecord(getWorkerPassRecord(workerInfo, workerAttendance));
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
log.error("", e);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private JcHttpUtil.UserRecordSyncRequest getWorkerPassRecord(WorkerInfo workerInfo, WorkerAttendance workerAttendance) throws Exception {
|
|
|
|
|
|
JcHttpUtil.UserRecordSyncRequest userRecordSyncRequest = new JcHttpUtil.UserRecordSyncRequest();
|
|
|
|
|
|
userRecordSyncRequest.setProjectId(JcHttpUtil.getJcProjectId());
|
|
|
|
|
|
JcHttpUtil.UserRecordSyncRequest.UserRecordForm form = new JcHttpUtil.UserRecordSyncRequest.UserRecordForm();
|
|
|
|
|
|
form.setRecordId(Convert.toStr(workerAttendance.getId()));
|
|
|
|
|
|
form.setEmpCenterId(Convert.toStr(workerInfo.getId()));
|
|
|
|
|
|
form.setEmpName(workerInfo.getWorkerName());
|
|
|
|
|
|
form.setDeviceKey(workerAttendance.getDevSn());
|
|
|
|
|
|
UfaceDev ufaceDev = ufaceDevService.getOne(new LambdaQueryWrapper<UfaceDev>()
|
|
|
|
|
|
.eq(UfaceDev::getDevSn, workerAttendance.getDevSn()));
|
|
|
|
|
|
if (ufaceDev != null) {
|
|
|
|
|
|
form.setDeviceName(ufaceDev.getDevName());
|
|
|
|
|
|
}
|
|
|
|
|
|
form.setDirection(Objects.equals(workerAttendance.getPassType(), 2) ? 0 : 1);
|
|
|
|
|
|
form.setPhotoUrl(FileUtils.getOnlineUrl(workerAttendance.getImageUrl()));
|
|
|
|
|
|
form.setShowTime(workerAttendance.getCreateTime());
|
|
|
|
|
|
form.setIdcardNo(AESUtil.Encrypt(workerInfo.getIdCard(), AESUtil.SECRET));
|
|
|
|
|
|
form.setCreateDate(DateUtil.now());
|
|
|
|
|
|
form.setUpdateDate(form.getCreateDate());
|
|
|
|
|
|
form.setDeleteFlag(0);
|
|
|
|
|
|
form.setNeedEscape("0");
|
|
|
|
|
|
userRecordSyncRequest.setSmartUserRecordFormList(Collections.singletonList(form));
|
|
|
|
|
|
return userRecordSyncRequest;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 机场项目推送扬尘
|
|
|
|
|
|
*/
|
|
|
|
|
|
@SchedulerLock(name = "jcPushDustData", lockAtMostFor = 1000 * 60 * 60, lockAtLeastFor = 1000 * 60 * 3)
|
|
|
|
|
|
@Scheduled(cron = "0 0 */1 * * ?")
|
|
|
|
|
|
@RequestMapping("jcPushDustData")
|
|
|
|
|
|
public void jcPushDustData() {
|
|
|
|
|
|
if (!JcHttpUtil.isJc()) {
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
List<EnvironmentDev> devs;
|
|
|
|
|
|
if (JcHttpUtil.isJcAll()) {
|
|
|
|
|
|
devs = environmentDevService.list(null);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
devs = environmentDevService.list(new LambdaQueryWrapper<EnvironmentDev>()
|
|
|
|
|
|
.eq(EnvironmentDev::getProjectSn, JcHttpUtil.JC_PROJECTSN));
|
|
|
|
|
|
}
|
|
|
|
|
|
Date now = new Date();
|
|
|
|
|
|
DateTime offsetHour = DateUtil.offsetHour(now, -1);
|
|
|
|
|
|
ArrayList<JcHttpUtil.DustDataSyncRequest.DataForm> dustDataFormLists = Lists.newArrayList();
|
|
|
|
|
|
for (EnvironmentDev dev : devs) {
|
|
|
|
|
|
DustNoiseData data = dustNoiseDataService.getOne(new LambdaQueryWrapper<DustNoiseData>()
|
|
|
|
|
|
.eq(DustNoiseData::getDeviceId, dev.getDeviceId())
|
|
|
|
|
|
.ge(DustNoiseData::getUploadDate, DateUtil.formatDateTime(offsetHour))
|
|
|
|
|
|
.le(DustNoiseData::getUploadDate, DateUtil.formatDateTime(now))
|
|
|
|
|
|
.orderByDesc(DustNoiseData::getUploadDate).last("limit 1"));
|
|
|
|
|
|
if (data != null) {
|
|
|
|
|
|
JcHttpUtil.DustDataSyncRequest.DataForm e = new JcHttpUtil.DustDataSyncRequest.DataForm();
|
|
|
|
|
|
e.setDustName(dev.getDeviceName());
|
|
|
|
|
|
e.setDeviceSn(data.getDeviceId());
|
|
|
|
|
|
e.setAccTime(data.getUploadDate());
|
|
|
|
|
|
e.setPm25(Convert.toStr(data.getPm25()));
|
|
|
|
|
|
e.setPm10(Convert.toStr(data.getPm10()));
|
|
|
|
|
|
e.setNoise(Convert.toStr(data.getNoise()));
|
|
|
|
|
|
e.setEnvTemp(Convert.toStr(data.getTemperature()));
|
|
|
|
|
|
e.setEnvRh(Convert.toStr(data.getHumidity()));
|
|
|
|
|
|
if (StringUtils.isNotEmpty(data.getWinddirection())) {
|
|
|
|
|
|
e.setWindDirection(JcHttpUtil.getWindDirection(WindDirectionUtils.getWindDirectionName(data.getWinddirection())));
|
|
|
|
|
|
}
|
|
|
|
|
|
e.setWindSpeed(Convert.toStr(data.getWindspeed()));
|
|
|
|
|
|
e.setPushTime(data.getUploadDate());
|
|
|
|
|
|
e.setState("1");
|
|
|
|
|
|
dustDataFormLists.add(e);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
if (CollUtil.isNotEmpty(dustDataFormLists)) {
|
|
|
|
|
|
JcHttpUtil.DustDataSyncRequest e = new JcHttpUtil.DustDataSyncRequest();
|
|
|
|
|
|
e.setProjectId(JcHttpUtil.getJcProjectId());
|
|
|
|
|
|
for (JcHttpUtil.DustDataSyncRequest.DataForm dustDataForm : dustDataFormLists) {
|
|
|
|
|
|
dustDataForm.setProjectId(e.getProjectId());
|
|
|
|
|
|
}
|
|
|
|
|
|
e.setSmartDustDataFormList(dustDataFormLists);
|
|
|
|
|
|
JcHttpUtil.jcPushDustData(e);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 机场项目转发电箱数据
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param electricalData
|
|
|
|
|
|
* @param electricalDev
|
|
|
|
|
|
* @param jcAlarmStatus
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Async("electricalExecutor")
|
|
|
|
|
|
public void sendAddElectricalData(ElectricalData electricalData, ElectricalDev electricalDev, Integer jcAlarmStatus) {
|
|
|
|
|
|
if (!JcHttpUtil.isJcProject(electricalData.getProjectSn())) {
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (Objects.equals(Convert.toDouble(electricalData.getPhaseCurrentA()), 0D)
|
|
|
|
|
|
|| Objects.equals(Convert.toDouble(electricalData.getPhaseCurrentB()), 0D)
|
|
|
|
|
|
|| Objects.equals(Convert.toDouble(electricalData.getPhaseCurrentC()), 0D)) {
|
|
|
|
|
|
jcAlarmStatus = 4;
|
|
|
|
|
|
}
|
|
|
|
|
|
JcHttpUtil.PowerDeviceDataSyncRequest request = getPowerDeviceDataSyncRequest(electricalData, electricalDev, jcAlarmStatus);
|
|
|
|
|
|
JcHttpUtil.jcPushElectricalData(Collections.singletonList(request));
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private JcHttpUtil.PowerDeviceDataSyncRequest getPowerDeviceDataSyncRequest(ElectricalData electricalData, ElectricalDev electricalDev, Integer jcAlarmStatus) {
|
|
|
|
|
|
JcHttpUtil.PowerDeviceDataSyncRequest request = new JcHttpUtil.PowerDeviceDataSyncRequest();
|
|
|
|
|
|
request.setProjectId(Long.valueOf(JcHttpUtil.getJcProjectId()));
|
|
|
|
|
|
request.setDeviceNo(electricalData.getDevSn());
|
|
|
|
|
|
request.setDeviceName(electricalDev.getDevName());
|
|
|
|
|
|
request.setDeviceStatus("1");
|
|
|
|
|
|
request.setDataDate(DateUtil.formatDateTime(DateUtil.parseDateTime(electricalData.getUploadTime())));
|
|
|
|
|
|
request.setEnvirwarm(Convert.toDouble(electricalData.getAmbientTemperature()));
|
|
|
|
|
|
request.setAwarm(Convert.toDouble(electricalData.getCableTemperatureA()));
|
|
|
|
|
|
request.setBwarm(Convert.toDouble(electricalData.getCableTemperatureB()));
|
|
|
|
|
|
request.setCwarm(Convert.toDouble(electricalData.getCableTemperatureC()));
|
|
|
|
|
|
request.setVoltageA(Convert.toDouble(electricalData.getVoltageA()));
|
|
|
|
|
|
request.setVoltageB(Convert.toDouble(electricalData.getVoltageB()));
|
|
|
|
|
|
request.setVoltageC(Convert.toDouble(electricalData.getVoltageC()));
|
|
|
|
|
|
request.setCurrentA(Convert.toDouble(electricalData.getPhaseCurrentA()));
|
|
|
|
|
|
request.setCurrentB(Convert.toDouble(electricalData.getPhaseCurrentB()));
|
|
|
|
|
|
request.setCurrentC(Convert.toDouble(electricalData.getPhaseCurrentC()));
|
|
|
|
|
|
request.setLeak(Convert.toDouble(electricalData.getElectricLeakage()));
|
|
|
|
|
|
request.setAlarmStatus(jcAlarmStatus);
|
|
|
|
|
|
return request;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|