| | |
| | | |
| | | package org.springblade.mdm.program.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springblade.core.log.exception.ServiceException; |
| | | import org.springblade.core.mp.base.BizServiceImpl; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.oss.OssTemplate; |
| | | import org.springblade.core.tool.utils.DateUtil; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.mdm.flow.service.CureFlowService; |
| | | import org.springblade.mdm.program.entity.DncBackFile; |
| | | import org.springblade.mdm.program.entity.NcProgram; |
| | | import org.springblade.mdm.program.mapper.DncBackFileMapper; |
| | | import org.springblade.mdm.program.vo.DncBackFileQueryVO; |
| | | import org.springblade.mdm.program.vo.DncBackFileVO; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | |
| | | @AllArgsConstructor |
| | | /** |
| | | * DNC回传文件处理服务 |
| | | * |
| | | * @author yangys |
| | | */ |
| | | @Slf4j |
| | | @Service |
| | | @AllArgsConstructor |
| | | public class DncBackFileService extends BizServiceImpl<DncBackFileMapper, DncBackFile> { |
| | | private final NcProgramService progService; |
| | | private final NcNodeService ncNodeService; |
| | | private final OssTemplate ossTemplate; |
| | | |
| | | private final CureFlowService cureFlowService; |
| | | /** |
| | | * 接受 |
| | | * @param ids |
| | | */ |
| | | public void accept(String ids) { |
| | | |
| | | List<Long> idList = Func.toLongList(ids); |
| | | |
| | | for(Long id : idList){ |
| | | DncBackFile backFile = this.getById(id); |
| | | backFile.setStatus(DncBackFile.STATUS_ACCEPTED); |
| | | backFile.setConfirmTime(DateUtil.now()); |
| | | this.updateById(backFile); |
| | | |
| | | //新建一个程序,将老的程序isLastEditon设置未0,然后启动流程 |
| | | this.upgradeProgramAndStartCure(backFile.getNcProgramId(),backFile); |
| | | } |
| | | } |
| | | |
| | | void upgradeProgramAndStartCure(long ncProgramId,DncBackFile backFile) { |
| | | NcProgram oldProgram = this.progService.getById(ncProgramId); |
| | | //更新文件信息 |
| | | oldProgram.setOssName(backFile.getOssName()); |
| | | oldProgram.setUrl(backFile.getUrl()); |
| | | //TODO,是否删除原来的文件? |
| | | progService.updateById(oldProgram); |
| | | /* |
| | | NcProgram newProgram = new NcProgram(); |
| | | BeanUtils.copyProperties(oldProgram,newProgram); |
| | | |
| | | oldProgram.setIsLastEdition(0); |
| | | progService.updateById(oldProgram); |
| | | |
| | | newProgram.setId(null); |
| | | newProgram.setIsLastEdition(1); |
| | | progService.updateById(newProgram); |
| | | |
| | | */ |
| | | |
| | | cureFlowService.startOne(oldProgram);//启动一个程序的固化流程 |
| | | } |
| | | |
| | | /** |
| | | * 拒绝 |
| | | * @param ids |
| | | */ |
| | | public void reject(String ids) { |
| | | List<Long> idList = Func.toLongList(ids); |
| | | |
| | | for(Long id : idList){ |
| | | DncBackFile backFile = this.getById(id); |
| | | backFile.setStatus(DncBackFile.STATUS_REJECTED); |
| | | backFile.setConfirmTime(DateUtil.now()); |
| | | this.ossTemplate.removeFile(backFile.getOssName()); |
| | | this.updateById(backFile); |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | | * DNC回传程序处理分页查询 |
| | | * @param query 查询参数 |
| | | * @return 分页数据 |
| | | */ |
| | | public IPage<DncBackFileVO> pageQuery(DncBackFileQueryVO query) { |
| | | /* |
| | | IPage<DncBackFileVO> page = this.getBaseMapper().pageQuery(Condition.getPage(query),query); |
| | | */ |
| | | return this.getBaseMapper().pageQuery(Condition.getPage(query),query); |
| | | return this.baseMapper.pageQuery(Condition.getPage(query),query); |
| | | } |
| | | |
| | | } |