|
@ -59,7 +59,9 @@ import javax.annotation.Resource; |
|
|
import javax.validation.Validator; |
|
|
import javax.validation.Validator; |
|
|
import java.time.LocalDateTime; |
|
|
import java.time.LocalDateTime; |
|
|
import java.util.ArrayList; |
|
|
import java.util.ArrayList; |
|
|
|
|
|
import java.util.HashMap; |
|
|
import java.util.List; |
|
|
import java.util.List; |
|
|
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
|
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; |
|
|
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; |
|
|
import static com.win.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId; |
|
|
import static com.win.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId; |
|
@ -384,12 +386,25 @@ public class PutawayRequestMainServiceImpl implements PutawayRequestMainService |
|
|
putawayJobMainDO.setDepartmentCode(userApi.getUser(getLoginUserId()).getDeptId().toString()); |
|
|
putawayJobMainDO.setDepartmentCode(userApi.getUser(getLoginUserId()).getDeptId().toString()); |
|
|
putawayJobMainMapper.insert(putawayJobMainDO); |
|
|
putawayJobMainMapper.insert(putawayJobMainDO); |
|
|
List<PutawayJobDetailDO> putawayJobDetailDOList = new ArrayList<>(); |
|
|
List<PutawayJobDetailDO> putawayJobDetailDOList = new ArrayList<>(); |
|
|
for(PutawayRequestDetailDO putawayRequestDetailDO : detailDOList) { |
|
|
|
|
|
PutawayJobDetailDO putawayJobDetailDO = PutawayJobDetailConvert.INSTANCE.convert(putawayRequestDetailDO); |
|
|
Map<String,String> packingNumberMap = new HashMap<>(); |
|
|
|
|
|
// 推荐库位设置
|
|
|
|
|
|
for(PutawayRequestDetailDO putawayRequestDetailDO : detailDOList){ |
|
|
|
|
|
if(StringUtils.isEmpty(putawayRequestDetailDO.getParentPackingNumber())){ |
|
|
// 推荐库位
|
|
|
// 推荐库位
|
|
|
String locationCode = ruleService.groundingNew(putawayJobMainDO.getSupplierCode(), null, putawayRequestDetailDO.getItemCode(), putawayJobDetailDO.getInventoryStatus(), null, null, null, null, null,"PurchasePutaway",null); |
|
|
String locationCode = ruleService.groundingNew(putawayJobMainDO.getSupplierCode(), null, putawayRequestDetailDO.getItemCode(), putawayRequestDetailDO.getInventoryStatus(), null, null, null, null, null,"PurchasePutaway",null); |
|
|
putawayJobDetailDO.setToLocationCode(locationCode); |
|
|
packingNumberMap.put(putawayRequestDetailDO.getPackingNumber(),locationCode); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
for(PutawayRequestDetailDO putawayRequestDetailDO : detailDOList) { |
|
|
|
|
|
PutawayJobDetailDO putawayJobDetailDO = PutawayJobDetailConvert.INSTANCE.convert(putawayRequestDetailDO); |
|
|
|
|
|
// 从map中获取推荐库位
|
|
|
|
|
|
if(StringUtils.isEmpty(putawayRequestDetailDO.getParentPackingNumber())){ |
|
|
|
|
|
putawayJobDetailDO.setToLocationCode(packingNumberMap.get(putawayRequestDetailDO.getPackingNumber())); |
|
|
|
|
|
}else { |
|
|
|
|
|
putawayJobDetailDO.setToLocationCode(packingNumberMap.get(putawayRequestDetailDO.getParentPackingNumber())); |
|
|
|
|
|
} |
|
|
putawayJobDetailDO.setNumber(number); |
|
|
putawayJobDetailDO.setNumber(number); |
|
|
putawayJobDetailDO.setMasterId(putawayJobMainDO.getId()); |
|
|
putawayJobDetailDO.setMasterId(putawayJobMainDO.getId()); |
|
|
putawayJobDetailDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); |
|
|
putawayJobDetailDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); |
|
|