package com.sandu.ximon.admin.service;
|
|
import com.sandu.common.execption.BusinessException;
|
import com.sandu.common.service.impl.BaseServiceImpl;
|
import com.sandu.ximon.admin.param.MissionParam;
|
import com.sandu.ximon.admin.security.SecurityUtils;
|
import com.sandu.ximon.dao.domain.LampMission;
|
import com.sandu.ximon.dao.domain.LightAdjust;
|
import com.sandu.ximon.dao.mapper.LampMissionMapper;
|
import lombok.AllArgsConstructor;
|
import org.springframework.stereotype.Service;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 已弃用
|
*/
|
@Service
|
@AllArgsConstructor
|
public class LampMissionService extends BaseServiceImpl<LampMissionMapper, LampMission> {
|
private final LightAdjustService lightAdjustService;
|
// private final Snowflake snowflake;
|
|
public boolean addLampMission(MissionParam MissionParam) {
|
LampMission lampMission = new LampMission();
|
Long clientId = SecurityUtils.getClientId();
|
// lampMission.setId(snowflake.nextId());
|
lampMission.setUserId(clientId);
|
lampMission.setWeeks(MissionParam.getWeeks());
|
lampMission.setInitial(MissionParam.getInitial());
|
lampMission.setOffTime(MissionParam.getOffTime());
|
lampMission.setOnTime(MissionParam.getOnTime());
|
boolean b1 = save(lampMission);
|
// LampMission one = getOne(Wrappers.lambdaQuery(LampMission.class).last("limit 1"));
|
// Long id = one.getId();
|
boolean b = false;
|
if (MissionParam.getAdjusts() != null) {
|
//LightAdjust adjust=new LightAdjust();
|
// adjust.setId(lampMission.getId());
|
List<LightAdjust> missions = new ArrayList<>();
|
for (LightAdjust adjust : MissionParam.getAdjusts()
|
) {
|
LightAdjust lightAdjust = new LightAdjust();
|
lightAdjust.setId(lampMission.getId());
|
lightAdjust.setMissionId(lampMission.getId());
|
lightAdjust.setAdjustTime(adjust.getAdjustTime());
|
lightAdjust.setLuminance(adjust.getLuminance());
|
missions.add(lightAdjust);
|
}
|
b = lightAdjustService.saveBatch(missions);
|
|
// lampMission.setAdjusts(MissionParam.getAdjusts());
|
}
|
|
if (MissionParam.getAdjusts() != null) {
|
return b;
|
} else {
|
return b1;
|
}
|
}
|
|
|
public boolean updateLampMission(Long id, MissionParam MissionParam) {
|
LampMission byId = getById(id);
|
if (byId == null) {
|
throw new BusinessException("未找到该灯杆");
|
}
|
LampMission lampMission = new LampMission();
|
Long clientId = SecurityUtils.getClientId();
|
lampMission.setUserId(clientId);
|
lampMission.setWeeks(MissionParam.getWeeks());
|
lampMission.setInitial(MissionParam.getInitial());
|
lampMission.setOffTime(MissionParam.getOffTime());
|
lampMission.setOnTime(MissionParam.getOnTime());
|
boolean b1 = updateById(lampMission);
|
boolean b = false;
|
if (MissionParam.getAdjusts() != null) {
|
// lightAdjustService.deleteByMissionId(id);//删除原先的定时任务
|
List<LightAdjust> missions = new ArrayList<>();
|
//设置新的定时任务
|
for (LightAdjust adjust : MissionParam.getAdjusts()
|
) {
|
LightAdjust lightAdjust = new LightAdjust();
|
lightAdjust.setId(adjust.getId());
|
lightAdjust.setMissionId(id);
|
lightAdjust.setAdjustTime(adjust.getAdjustTime());
|
lightAdjust.setLuminance(adjust.getLuminance());
|
missions.add(lightAdjust);
|
}
|
b = lightAdjustService.updateBatchById(missions);
|
}
|
|
if (MissionParam.getAdjusts() != null) {
|
return b;
|
} else {
|
return b1;
|
}
|
|
|
}
|
|
|
public boolean deleteMission(Long id) {
|
LampMission byId = getById(id);
|
if (byId == null) {
|
throw new BusinessException("未找到该灯杆");
|
}
|
boolean removeById = removeById(id);
|
if(removeById){
|
return lightAdjustService.deleteByMissionId(id);
|
}
|
return removeById(id);
|
}
|
|
|
}
|