| | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.chinaztt.mes.basic.dto.ParamPlusDto; |
| | | import com.chinaztt.mes.basic.entity.Param; |
| | | import com.chinaztt.mes.basic.entity.ParamJoinTemplate; |
| | | import com.chinaztt.mes.basic.excel.ParamData; |
| | |
| | | import lombok.AllArgsConstructor; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | private DictUtils dictUtils; |
| | | |
| | | @Override |
| | | public R<Boolean> fullSave(Param param) { |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R<Boolean> fullSave(ParamPlusDto param) { |
| | | int noCount = baseMapper.selectCount(Wrappers.<Param>lambdaQuery().eq(Param::getCode, param.getCode())); |
| | | if (noCount > 0) { |
| | | return R.failed("编号重复"); |
| | | } |
| | | baseMapper.insert(param); |
| | | List<SysDictItem> second_param = dictUtils.getDict("second_param"); |
| | | List<SysDictItem> third_param = dictUtils.getDict("third_param"); |
| | | Param father=new Param(); |
| | | father.setCode(param.getCode()); |
| | | father.setParameterItem(param.getParameterItem()); |
| | | baseMapper.insert(father); |
| | | //二级参数 |
| | | param.getSecondId().forEach(s->{ |
| | | Param second=new Param(); |
| | | SysDictItem sysDictItem = second_param.stream().filter(p -> p.getId().equals(Integer.valueOf(String.valueOf(s)))).collect(Collectors.toList()).get(0); |
| | | second.setParameterItem(sysDictItem.getLabel()); |
| | | second.setCode(""+s); |
| | | second.setParentId(father.getId()); |
| | | baseMapper.insert(second); |
| | | //三级 |
| | | param.getThirdId().forEach(t->{ |
| | | Param third=new Param(); |
| | | SysDictItem sysThirdDictItem = third_param.stream().filter(p -> p.getId().equals(Integer.valueOf(String.valueOf(t)))).collect(Collectors.toList()).get(0); |
| | | third.setParameterItem(sysThirdDictItem.getLabel()); |
| | | third.setCode(""+t); |
| | | third.setParentId(second.getId()); |
| | | baseMapper.insert(third); |
| | | }); |
| | | }); |
| | | return R.ok(); |
| | | } |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | private String codeMake() { |
| | | // 固定字符串 GX + 年月日 + 01 |
| | | DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); |
| | | String yrar = formatter.format(LocalDateTime.now()); |
| | | String code = "GX" + yrar; |
| | | List<String> parameterItem = baseMapper.getNos(code); |
| | | if (CollectionUtil.isEmpty(parameterItem)) { |
| | | code = code + "01"; |
| | | } |
| | | return code; |
| | | } |
| | | |
| | | } |