| | |
| | | import org.apache.shiro.SecurityUtils; |
| | | import org.jeecg.common.system.vo.LoginUser; |
| | | import org.jeecg.common.util.DateUtils; |
| | | import org.jeecg.modules.dnc.entity.GuideCardBatch; |
| | | import org.jeecg.modules.dnc.constant.DocAttributionTypeEnum; |
| | | import org.jeecg.modules.dnc.entity.*; |
| | | import org.jeecg.modules.dnc.mapper.GuideCardBatchMapper; |
| | | import org.jeecg.modules.dnc.service.IGuideCardBatchService; |
| | | import org.jeecg.modules.dnc.service.*; |
| | | import org.jeecg.modules.system.service.ISysDictService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | |
| | | @Autowired |
| | | private ISysDictService sysDictService; |
| | | |
| | | @Autowired |
| | | private IDocInfoService docInfoService; |
| | | |
| | | @Autowired |
| | | private IPartsInfoService partsInfoService; |
| | | |
| | | @Autowired |
| | | private IProcessStreamService processStreamService; |
| | | |
| | | @Autowired |
| | | private IWorkStepService workStepService; |
| | | |
| | | @Autowired |
| | | private IDeviceTypeService deviceTypeService; |
| | | |
| | | /** |
| | | * 生成流水号 |
| | | * @param code |
| | |
| | | |
| | | // 查询当年所有记录 |
| | | QueryWrapper<GuideCardBatch> wrapper = new QueryWrapper<>(); |
| | | wrapper.likeRight("create_time", DateUtils.formatDate(new Date(), "yyyy")); |
| | | wrapper.apply("YEAR(create_time) = YEAR(GETDATE())"); |
| | | wrapper.isNotNull("serial_number"); |
| | | wrapper.orderByDesc("SUBSTR(serial_number, -4)"); |
| | | wrapper.orderByDesc("SUBSTRING(serial_number, LEN(serial_number)-3, 4)"); |
| | | |
| | | List<GuideCardBatch> list = this.list(wrapper); |
| | | |
| | |
| | | serialSuffix = "0001"; // 当年无记录则初始化 |
| | | } |
| | | |
| | | // 获取单位编码 |
| | | String unitCode = sysDictService.queryDictTextByKey("unit_code", code); |
| | | |
| | | // 拼接完整编号 |
| | | return yearSuffix + unitCode + user.getUsername() + serialSuffix; |
| | | return yearSuffix+"-"+ code+"-"+ user.getUsername()+"-"+ serialSuffix; |
| | | } |
| | | |
| | | /** |
| | | * 导入NC文件默认产生nc文件对应数控程序加工确认表 |
| | | * @param docId |
| | | * @return |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public boolean importGuideCardBatch(String docId,String attributionId,Integer attributionType){ |
| | | LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); |
| | | DocInfo docInfo=docInfoService.getById(docId); |
| | | if (docInfo==null){ |
| | | return false; |
| | | } |
| | | PartsInfo partsInfo=new PartsInfo(); |
| | | ProcessStream processStream; |
| | | WorkStep workStep; |
| | | DeviceType deviceType; |
| | | GuideCardBatch guideCardBatch=new GuideCardBatch(); |
| | | if (DocAttributionTypeEnum.PROCESS.getCode().equals(attributionType)){ |
| | | //工序设备类 |
| | | deviceType=deviceTypeService.getById(attributionId); |
| | | if (deviceType==null){ |
| | | return false; |
| | | } |
| | | processStream=processStreamService.getById(deviceType.getAttributionId()); |
| | | if (processStream==null){ |
| | | return false; |
| | | } |
| | | guideCardBatch.setProcessWorkCode(processStream.getProcessCode()); |
| | | partsInfo=partsInfoService.getById(processStream.getPartsId()); |
| | | }else if (DocAttributionTypeEnum.WORKSITE.getCode().equals(attributionType)){ |
| | | //工步设备类 |
| | | deviceType=deviceTypeService.getById(attributionId); |
| | | if (deviceType==null){ |
| | | return false; |
| | | } |
| | | workStep=workStepService.getById(deviceType.getAttributionId()); |
| | | if (workStep==null){ |
| | | return false; |
| | | } |
| | | guideCardBatch.setProcessWorkCode(workStep.getStepCode()); |
| | | partsInfo=partsInfoService.getById(workStep.getPartsId()); |
| | | } |
| | | guideCardBatch.setDocId(docId); |
| | | guideCardBatch.setSerialNumber(getSerialNumber("C140")); |
| | | guideCardBatch.setUnit(sysDictService.queryDictTextByKey("unit_code", "C140")); |
| | | guideCardBatch.setDocName(docInfo.getDocName()); |
| | | if (partsInfo!=null){ |
| | | guideCardBatch.setPartsCode(partsInfo.getPartsCode()); |
| | | guideCardBatch.setPartsName(partsInfo.getPartsName()); |
| | | guideCardBatch.setMaterielDesp(partsInfo.getMaterielDesp()); |
| | | } |
| | | guideCardBatch.setFlowStatus("0"); |
| | | guideCardBatch.setCompiler(user.getUsername()); |
| | | guideCardBatch.setCreateTime(new Date()); |
| | | return this.save(guideCardBatch); |
| | | } |
| | | } |