|  |  |  | 
|---|
|  |  |  | import com.vincent.rsf.server.manager.service.CompanysService; | 
|---|
|  |  |  | import com.vincent.rsf.server.manager.service.MatnrService; | 
|---|
|  |  |  | import com.vincent.rsf.server.system.constant.SerialRuleCode; | 
|---|
|  |  |  | import com.vincent.rsf.server.system.entity.Fields; | 
|---|
|  |  |  | import com.vincent.rsf.server.system.service.DictDataService; | 
|---|
|  |  |  | import com.vincent.rsf.server.system.service.FieldsItemService; | 
|---|
|  |  |  | import com.vincent.rsf.server.system.service.FieldsService; | 
|---|
|  |  |  | import com.vincent.rsf.server.system.utils.SerialRuleUtils; | 
|---|
|  |  |  | import org.apache.commons.lang3.StringUtils; | 
|---|
|  |  |  | import org.springframework.beans.BeanUtils; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  | 
|---|
|  |  |  | throw new CoolException(sbFaild.toString()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | String trackCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_LABEL_CODE, matnr); | 
|---|
|  |  |  | orderItem.setAsnId(order.getId()) | 
|---|
|  |  |  | .setAsnCode(order.getCode()) | 
|---|
|  |  |  | orderItem.setOrderId(order.getId()) | 
|---|
|  |  |  | .setOrderCode(order.getCode()) | 
|---|
|  |  |  | .setSplrBatch(orderTemplate.getSplrBatch()) | 
|---|
|  |  |  | .setPlatItemId(orderTemplate.getPlatItemId()) | 
|---|
|  |  |  | .setAnfme(Double.parseDouble(orderTemplate.getAnfme())) | 
|---|
|  |  |  | 
|---|
|  |  |  | if (Objects.isNull(wkOrderItem.getAnfme()) || Double.compare(wkOrderItem.getAnfme(), 0.0) <= 0) { | 
|---|
|  |  |  | throw new CoolException("计划数不能为空!!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Matnr matnr = matnrService.getOne(new LambdaQueryWrapper<Matnr>().eq(Matnr::getCode, wkOrderItem.getMatnrCode())); | 
|---|
|  |  |  | if (Objects.isNull(matnr)) { | 
|---|
|  |  |  | throw new CoolException("数据错误:物料" + wkOrderItem.getMatnrCode() + "不存在!!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | BeanUtils.copyProperties(matnr, wkOrderItem); | 
|---|
|  |  |  | wkOrderItem.setMatnrCode(matnr.getCode()).setMatnrId(matnr.getId()).setMaktx(matnr.getName()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //保存扩展字段 | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | StringBuffer sb = new StringBuffer(); | 
|---|
|  |  |  | if (Objects.isNull(wkOrderItem.getFieldsIndex()) || StringUtils.isBlank(wkOrderItem.getFieldsIndex())) { | 
|---|
|  |  |  | sb.append(wkOrderItem.getMatnrId() + wkOrderItem.getSplrBatch() ); | 
|---|
|  |  |  | List<Fields> fields = FieldsUtils.getFieldsSta(); | 
|---|
|  |  |  | for (Fields field : fields) { | 
|---|
|  |  |  | if (Objects.isNull(params.get(field.getFields()))) { | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //字段拼接 | 
|---|
|  |  |  | sb.append(params.get(field.getFields())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | sb.append(wkOrderItem.getMatnrId() + wkOrderItem.getSplrBatch()); | 
|---|
|  |  |  | //获取16位uuid | 
|---|
|  |  |  | String uuid16 = Cools.md5Chinese(sb.toString()); | 
|---|
|  |  |  | wkOrderItem.setFieldsIndex(uuid16); | 
|---|