package com.aps.core.service.impl;
|
|
import java.util.List;
|
|
import com.aps.common.core.utils.DateUtils;
|
import com.aps.common.core.utils.StringUtils;
|
import com.aps.common.core.utils.uuid.IdUtils;
|
import com.aps.core.domain.ApsPartPlan;
|
import com.aps.core.domain.ApsPartPlanTemp;
|
import com.aps.core.domain.ApsWeldSeamTemp;
|
import com.aps.core.mapper.ApsWeldSeamTempMapper;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import com.aps.core.mapper.ApsWeldSeamMapper;
|
import com.aps.core.domain.ApsWeldSeam;
|
import com.aps.core.service.IApsWeldSeamService;
|
import org.springframework.transaction.annotation.Transactional;
|
|
/**
|
* 焊缝Service业务层处理
|
*
|
* @author wwj
|
* @date 2025-04-09
|
*/
|
@Service
|
public class ApsWeldSeamServiceImpl implements IApsWeldSeamService
|
{
|
@Autowired
|
private ApsWeldSeamMapper apsWeldSeamMapper;
|
@Autowired
|
private ApsWeldSeamTempMapper apsWeldSeamTempMapper;
|
|
/**
|
* 查询焊缝
|
*
|
* @param id 焊缝主键
|
* @return 焊缝
|
*/
|
@Override
|
public ApsWeldSeam selectApsWeldSeamById(String id)
|
{
|
return apsWeldSeamMapper.selectApsWeldSeamById(id);
|
}
|
|
/**
|
* 查询焊缝列表
|
*
|
* @param apsWeldSeam 焊缝
|
* @return 焊缝
|
*/
|
@Override
|
public List<ApsWeldSeam> selectApsWeldSeamList(ApsWeldSeam apsWeldSeam)
|
{
|
return apsWeldSeamMapper.selectApsWeldSeamList(apsWeldSeam);
|
}
|
|
/**
|
* 新增焊缝
|
*
|
* @param apsWeldSeam 焊缝
|
* @return 结果
|
*/
|
@Override
|
public int insertApsWeldSeam(ApsWeldSeam apsWeldSeam)
|
{
|
apsWeldSeam.setId(IdUtils.fastUUID());
|
apsWeldSeam.setCreateTime(DateUtils.getNowDate());
|
return apsWeldSeamMapper.insertApsWeldSeam(apsWeldSeam);
|
}
|
|
/**
|
* 修改焊缝
|
*
|
* @param apsWeldSeam 焊缝
|
* @return 结果
|
*/
|
@Override
|
public int updateApsWeldSeam(ApsWeldSeam apsWeldSeam)
|
{
|
return apsWeldSeamMapper.updateApsWeldSeam(apsWeldSeam);
|
}
|
|
/**
|
* 批量删除焊缝
|
*
|
* @param ids 需要删除的焊缝主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteApsWeldSeamByIds(String[] ids)
|
{
|
return apsWeldSeamMapper.deleteApsWeldSeamByIds(ids);
|
}
|
|
/**
|
* 删除焊缝信息
|
*
|
* @param id 焊缝主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteApsWeldSeamById(String id)
|
{
|
return apsWeldSeamMapper.deleteApsWeldSeamById(id);
|
}
|
|
@Override
|
public int confirmWeldSeam(ApsWeldSeamTemp apsWeldSeamTemp) {
|
//查询临时表数据
|
List<ApsWeldSeamTemp> apsWeldSeamTemps=apsWeldSeamTempMapper.selectApsWeldSeamTempList(apsWeldSeamTemp);
|
int count=0;
|
String[] ids=new String[apsWeldSeamTemps.size()];
|
for (int i = 0; i <apsWeldSeamTemps.size() ; i++) {
|
//记录临时表id
|
ids[i]=apsWeldSeamTemps.get(i).getId();
|
ApsWeldSeam apsWeldSeam=new ApsWeldSeam();
|
BeanUtils.copyProperties(apsWeldSeamTemps.get(i), apsWeldSeam);
|
//通过工单号查询是否存在数据
|
ApsWeldSeam apsWeldSeam1=apsWeldSeamMapper.selectApsWeldSeamByWorkOrderNo(apsWeldSeam.getWorkOrderNo());
|
//当工单号存在则更新数据否则插入数据
|
if(StringUtils.isNotEmpty(apsWeldSeam1.getId())){
|
apsWeldSeam.setId(apsWeldSeam1.getId());
|
apsWeldSeamMapper.updateApsWeldSeam(apsWeldSeam);
|
}else {
|
//插入正式表,并记录
|
apsWeldSeam.setId(IdUtils.fastUUID());
|
apsWeldSeamMapper.insertApsWeldSeam(apsWeldSeam);
|
}
|
count++;
|
}
|
//插入数量与临时表查询一直则删除临时表数据
|
if (count==apsWeldSeamTemps.size()) {
|
apsWeldSeamTempMapper.deleteApsWeldSeamTempByIds(ids);
|
}
|
return 1;
|
}
|
}
|