private GarmentInventoryMovement GenerateGarmentInventoryMovement(GarmentUnitExpenditureNote garmentUnitExpenditureNote, GarmentUnitExpenditureNoteItem garmentUnitExpenditureNoteItem, GarmentInventorySummary garmentInventorySummary, string type = "IN") { var garmentInventoryMovement = new GarmentInventoryMovement(); EntityExtension.FlagForCreate(garmentInventoryMovement, identityService.Username, USER_AGENT); do { garmentInventoryMovement.No = CodeGenerator.Generate(); }while (dbSetGarmentInventoryMovement.Any(m => m.No == garmentInventoryMovement.No)); garmentInventoryMovement.Date = garmentInventoryMovement.CreatedUtc; garmentInventoryMovement.ReferenceNo = garmentUnitExpenditureNote.UENNo; garmentInventoryMovement.ReferenceType = string.Concat("Bon Pengeluaran Unit - ", garmentUnitExpenditureNote.UnitSenderName); garmentInventoryMovement.ProductId = garmentUnitExpenditureNoteItem.ProductId; garmentInventoryMovement.ProductCode = garmentUnitExpenditureNoteItem.ProductCode; garmentInventoryMovement.ProductName = garmentUnitExpenditureNoteItem.ProductName; garmentInventoryMovement.Type = (type ?? "").ToUpper() == "IN" ? "IN" : "OUT"; garmentInventoryMovement.StorageId = garmentUnitExpenditureNote.StorageId; garmentInventoryMovement.StorageCode = garmentUnitExpenditureNote.StorageCode; garmentInventoryMovement.StorageName = garmentUnitExpenditureNote.StorageName; garmentInventoryMovement.StockPlanning = 0; if (garmentUnitExpenditureNote.ExpenditureType == "TRANSFER") { garmentInventoryMovement.Before = garmentInventorySummary == null ? 0 : garmentInventorySummary.Quantity; garmentInventoryMovement.Quantity = (decimal)garmentUnitExpenditureNoteItem.Quantity * (type.ToUpper() == "OUT" ? -1 : 1); garmentInventoryMovement.After = garmentInventorySummary == null || garmentInventorySummary.Quantity == 0 ? garmentInventoryMovement.Quantity : garmentInventoryMovement.Before + garmentInventoryMovement.Quantity; } else { garmentInventoryMovement.Before = garmentInventorySummary == null ? 0 : garmentInventorySummary.Quantity; garmentInventoryMovement.Quantity = (decimal)garmentUnitExpenditureNoteItem.Quantity * ((type ?? "").ToUpper() == "OUT" ? -1 : 1); garmentInventoryMovement.After = garmentInventoryMovement.Before + garmentInventoryMovement.Quantity; } garmentInventoryMovement.UomId = garmentUnitExpenditureNoteItem.UomId; garmentInventoryMovement.UomUnit = garmentUnitExpenditureNoteItem.UomUnit; garmentInventoryMovement.Remark = garmentUnitExpenditureNoteItem.ProductRemark; return(garmentInventoryMovement); }
public async Task <GarmentUnitExpenditureNote> GetNewData() { long nowTicks = DateTimeOffset.Now.Ticks; var garmentUnitDeliveryOrder = await Task.Run(() => garmentUnitDeliveryOrderDataUtil.GetTestDataMultipleItem()); var garmentUnitExpenditureNote = new GarmentUnitExpenditureNote { UnitSenderId = garmentUnitDeliveryOrder.UnitSenderId, UnitSenderCode = garmentUnitDeliveryOrder.UnitSenderCode, UnitSenderName = garmentUnitDeliveryOrder.UnitSenderName, UnitRequestId = garmentUnitDeliveryOrder.UnitRequestId, UnitRequestCode = garmentUnitDeliveryOrder.UnitRequestCode, UnitRequestName = garmentUnitDeliveryOrder.UnitRequestName, UnitDOId = garmentUnitDeliveryOrder.Id, UnitDONo = garmentUnitDeliveryOrder.UnitDONo, StorageId = garmentUnitDeliveryOrder.StorageId, StorageCode = garmentUnitDeliveryOrder.StorageCode, StorageName = garmentUnitDeliveryOrder.StorageName, StorageRequestId = garmentUnitDeliveryOrder.StorageRequestId, StorageRequestCode = garmentUnitDeliveryOrder.StorageRequestCode, StorageRequestName = garmentUnitDeliveryOrder.StorageRequestName, ExpenditureType = "PROSES", ExpenditureTo = "PROSES", UENNo = "UENNO12345", ExpenditureDate = DateTimeOffset.Now, Items = new List <GarmentUnitExpenditureNoteItem>() }; foreach (var item in garmentUnitDeliveryOrder.Items) { var garmentUnitExpenditureNoteItem = new GarmentUnitExpenditureNoteItem { IsSave = true, DODetailId = item.DODetailId, EPOItemId = item.EPOItemId, URNItemId = item.URNItemId, UnitDOItemId = item.Id, PRItemId = item.PRItemId, FabricType = item.FabricType, POItemId = item.POItemId, POSerialNumber = item.POSerialNumber, ProductId = item.ProductId, ProductCode = item.ProductCode, ProductName = item.ProductName, ProductRemark = item.ProductRemark, Quantity = 5, RONo = item.RONo, UomId = item.UomId, UomUnit = item.UomUnit, PricePerDealUnit = item.PricePerDealUnit, }; new GarmentUnitExpenditureNoteItem { Id = 0, IsSave = true, DODetailId = item.DODetailId, EPOItemId = item.EPOItemId, URNItemId = item.URNItemId, UnitDOItemId = item.Id, PRItemId = item.PRItemId, FabricType = item.FabricType, POItemId = item.POItemId, POSerialNumber = item.POSerialNumber, ProductId = item.ProductId, ProductCode = item.ProductCode, ProductName = item.ProductName, ProductRemark = item.ProductRemark, Quantity = item.Quantity, RONo = item.RONo, UomId = item.UomId, UomUnit = item.UomUnit, PricePerDealUnit = item.PricePerDealUnit, }; garmentUnitExpenditureNote.Items.Add(garmentUnitExpenditureNoteItem); } return(garmentUnitExpenditureNote); }
private GarmentInventorySummary GenerateGarmentInventorySummary(GarmentUnitExpenditureNote garmentUnitExpenditureNote, GarmentUnitExpenditureNoteItem garmentUnitExpenditureNoteItem, GarmentInventoryMovement garmentInventoryMovement) { var garmentInventorySummary = new GarmentInventorySummary(); EntityExtension.FlagForCreate(garmentInventorySummary, identityService.Username, USER_AGENT); do { garmentInventorySummary.No = CodeGenerator.Generate(); }while (dbSetGarmentInventorySummary.Any(m => m.No == garmentInventorySummary.No)); garmentInventorySummary.ProductId = garmentUnitExpenditureNoteItem.ProductId; garmentInventorySummary.ProductCode = garmentUnitExpenditureNoteItem.ProductCode; garmentInventorySummary.ProductName = garmentUnitExpenditureNoteItem.ProductName; garmentInventorySummary.StorageId = garmentUnitExpenditureNote.StorageId; garmentInventorySummary.StorageCode = garmentUnitExpenditureNote.StorageCode; garmentInventorySummary.StorageName = garmentUnitExpenditureNote.StorageName; garmentInventorySummary.Quantity = garmentInventoryMovement.After; garmentInventorySummary.UomId = garmentUnitExpenditureNoteItem.UomId; garmentInventorySummary.UomUnit = garmentUnitExpenditureNoteItem.UomUnit; garmentInventorySummary.StockPlanning = 0; return(garmentInventorySummary); }