|
|
|
@ -1,26 +1,32 @@
|
|
|
|
|
package org.dromara.dms.service.impl;
|
|
|
|
|
|
|
|
|
|
import org.dromara.common.core.utils.MapstructUtils;
|
|
|
|
|
import org.dromara.common.core.utils.StringUtils;
|
|
|
|
|
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
|
|
|
|
import org.dromara.common.mybatis.core.page.PageQuery;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
|
import com.github.yulichang.toolkit.JoinWrappers;
|
|
|
|
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
|
|
import org.dromara.common.core.utils.MapstructUtils;
|
|
|
|
|
import org.dromara.common.core.utils.StringUtils;
|
|
|
|
|
import org.dromara.common.mybatis.core.page.PageQuery;
|
|
|
|
|
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
|
|
|
|
import org.dromara.dms.domain.DmsBaseDeviceType;
|
|
|
|
|
import org.dromara.dms.domain.DmsBaseMaintStandard;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
import org.dromara.dms.domain.bo.DmsBaseMaintStationBo;
|
|
|
|
|
import org.dromara.dms.domain.vo.DmsBaseMaintStationVo;
|
|
|
|
|
import org.dromara.dms.domain.DmsBaseMaintStation;
|
|
|
|
|
import org.dromara.dms.domain.DmsBaseStationProject;
|
|
|
|
|
import org.dromara.dms.domain.bo.DmsBaseMaintStationBo;
|
|
|
|
|
import org.dromara.dms.domain.bo.DmsBaseStationProjectBo;
|
|
|
|
|
import org.dromara.dms.domain.vo.DmsBaseMaintStationVo;
|
|
|
|
|
import org.dromara.dms.domain.vo.DmsBaseStationProjectVo;
|
|
|
|
|
import org.dromara.dms.mapper.DmsBaseMaintStationMapper;
|
|
|
|
|
import org.dromara.dms.mapper.DmsBaseStationProjectMapper;
|
|
|
|
|
import org.dromara.dms.service.IDmsBaseMaintStationService;
|
|
|
|
|
import org.dromara.dms.service.IDmsBaseStationProjectService;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Collection;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
import java.util.Collection;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 保养部位信息Service业务层处理
|
|
|
|
@ -34,6 +40,11 @@ public class DmsBaseMaintStationServiceImpl implements IDmsBaseMaintStationServi
|
|
|
|
|
|
|
|
|
|
private final DmsBaseMaintStationMapper baseMapper;
|
|
|
|
|
|
|
|
|
|
private final DmsBaseStationProjectMapper baseStationProjectMapper;
|
|
|
|
|
|
|
|
|
|
private final IDmsBaseStationProjectService dmsBaseStationProjectService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 查询保养部位信息
|
|
|
|
|
*
|
|
|
|
@ -42,7 +53,16 @@ public class DmsBaseMaintStationServiceImpl implements IDmsBaseMaintStationServi
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
public DmsBaseMaintStationVo queryById(Long maintStationId){
|
|
|
|
|
return baseMapper.selectVoById(maintStationId);
|
|
|
|
|
DmsBaseStationProjectBo dmsBaseStationProject = new DmsBaseStationProjectBo();
|
|
|
|
|
dmsBaseStationProject.setMaintStationId(maintStationId);
|
|
|
|
|
List<DmsBaseStationProjectVo> dmsBaseStationProjectVos = dmsBaseStationProjectService.queryList(dmsBaseStationProject);
|
|
|
|
|
Long[] maintProjectIds = dmsBaseStationProjectVos
|
|
|
|
|
.stream()
|
|
|
|
|
.map(DmsBaseStationProjectVo::getMaintProjectId)
|
|
|
|
|
.toArray(Long[]::new);
|
|
|
|
|
DmsBaseMaintStationVo dmsBaseMaintStationVo = baseMapper.selectVoById(maintStationId);
|
|
|
|
|
dmsBaseMaintStationVo.setMaintProjectIds(maintProjectIds);
|
|
|
|
|
return dmsBaseMaintStationVo;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
@ -101,6 +121,7 @@ public class DmsBaseMaintStationServiceImpl implements IDmsBaseMaintStationServi
|
|
|
|
|
* @return 是否新增成功
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public Boolean insertByBo(DmsBaseMaintStationBo bo) {
|
|
|
|
|
DmsBaseMaintStation add = MapstructUtils.convert(bo, DmsBaseMaintStation.class);
|
|
|
|
|
validEntityBeforeSave(add);
|
|
|
|
@ -108,6 +129,18 @@ public class DmsBaseMaintStationServiceImpl implements IDmsBaseMaintStationServi
|
|
|
|
|
if (flag) {
|
|
|
|
|
bo.setMaintStationId(add.getMaintStationId());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Long maintStationId = bo.getMaintStationId();//保养部位ID
|
|
|
|
|
// 保存保养项目关联信息
|
|
|
|
|
Long[] maintProjectIds = bo.getMaintProjectIds();
|
|
|
|
|
List<DmsBaseStationProject> dmsBaseStationProjectList = new ArrayList<>();
|
|
|
|
|
for (Long maintProjectId : maintProjectIds){
|
|
|
|
|
DmsBaseStationProject addStationProject = new DmsBaseStationProject();
|
|
|
|
|
addStationProject.setMaintStationId(maintStationId);
|
|
|
|
|
addStationProject.setMaintProjectId(maintProjectId);
|
|
|
|
|
dmsBaseStationProjectList.add(addStationProject);
|
|
|
|
|
}
|
|
|
|
|
baseStationProjectMapper.insertBatch(dmsBaseStationProjectList);
|
|
|
|
|
return flag;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -118,9 +151,24 @@ public class DmsBaseMaintStationServiceImpl implements IDmsBaseMaintStationServi
|
|
|
|
|
* @return 是否修改成功
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public Boolean updateByBo(DmsBaseMaintStationBo bo) {
|
|
|
|
|
DmsBaseMaintStation update = MapstructUtils.convert(bo, DmsBaseMaintStation.class);
|
|
|
|
|
validEntityBeforeSave(update);
|
|
|
|
|
|
|
|
|
|
// 删除保养项目关联信息,先删再加
|
|
|
|
|
Long maintStationId = bo.getMaintStationId();//保养部位ID
|
|
|
|
|
baseStationProjectMapper.deleteDmsBaseStationProjectByMaintStationId(maintStationId);
|
|
|
|
|
Long[] maintProjectIds = bo.getMaintProjectIds();
|
|
|
|
|
// 保存保养项目关联信息
|
|
|
|
|
List<DmsBaseStationProject> dmsBaseStationProjectList = new ArrayList<>();
|
|
|
|
|
for (Long maintProjectId : maintProjectIds){
|
|
|
|
|
DmsBaseStationProject addStationProject = new DmsBaseStationProject();
|
|
|
|
|
addStationProject.setMaintStationId(maintStationId);
|
|
|
|
|
addStationProject.setMaintProjectId(maintProjectId);
|
|
|
|
|
dmsBaseStationProjectList.add(addStationProject);
|
|
|
|
|
}
|
|
|
|
|
baseStationProjectMapper.insertBatch(dmsBaseStationProjectList);
|
|
|
|
|
return baseMapper.updateById(update) > 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -139,10 +187,14 @@ public class DmsBaseMaintStationServiceImpl implements IDmsBaseMaintStationServi
|
|
|
|
|
* @return 是否删除成功
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
|
|
|
|
if(isValid){
|
|
|
|
|
//TODO 做一些业务上的校验,判断是否需要校验
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Long[] maintStationIds = ids.toArray(new Long[0]);
|
|
|
|
|
baseStationProjectMapper.deleteDmsBaseStationProjectByMaintStationIds(maintStationIds);
|
|
|
|
|
return baseMapper.deleteByIds(ids) > 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|