public async Task <GarmentPurchaseRequest> GetTestData(GarmentPurchaseRequest data = null) { data = data ?? GetNewData(); await facade.Create(data, "Unit Test"); return(data); }
public async Task <int> Update(int id, GarmentPurchaseRequest m, string user, int clientTimeZoneOffset = 7) { int Updated = 0; using (var transaction = dbContext.Database.BeginTransaction()) { try { var oldM = this.dbSet.AsNoTracking() .Include(d => d.Items) .SingleOrDefault(pr => pr.Id == id && !pr.IsDeleted); if (oldM != null && oldM.Id == id) { EntityExtension.FlagForUpdate(m, user, USER_AGENT); foreach (var item in m.Items) { if (item.Id == 0) { EntityExtension.FlagForCreate(item, user, USER_AGENT); item.Status = "Belum diterima Pembelian"; } else { EntityExtension.FlagForUpdate(item, user, USER_AGENT); } } dbSet.Update(m); foreach (var oldItem in oldM.Items) { var newItem = oldM.Items.FirstOrDefault(i => i.Id.Equals(oldItem.Id)); if (newItem == null) { EntityExtension.FlagForDelete(oldItem, user, USER_AGENT); dbContext.GarmentPurchaseRequestItems.Update(oldItem); } } Updated = await dbContext.SaveChangesAsync(); transaction.Commit(); } else { throw new Exception("Invalid Id"); } } catch (Exception e) { transaction.Rollback(); throw new Exception(e.Message); } } return(Updated); }
public DataUtilResult(BasicDataUtil dataUtil, GarmentPurchaseRequest purchaseRequest, List <GarmentInternalPurchaseOrder> internalPurchaseOrders, GarmentExternalPurchaseOrder externalPurchaseOrder, GarmentDeliveryOrder deliveryOrder) { this.dataUtil = dataUtil; this.purchaseRequest = purchaseRequest; this.internalPurchaseOrders = internalPurchaseOrders; this.externalPurchaseOrder = externalPurchaseOrder; this.deliveryOrder = deliveryOrder; }
public async Task Should_Error_Update_Data() { GarmentPurchaseRequestFacade facade = new GarmentPurchaseRequestFacade(ServiceProvider, _dbContext(GetCurrentMethod())); var model = await dataUtil(facade, GetCurrentMethod()).GetTestData(); Exception errorInvalidId = await Assert.ThrowsAsync <Exception>(async() => await facade.Update(0, model, USERNAME)); Assert.NotNull(errorInvalidId.Message); GarmentPurchaseRequest newModel = new GarmentPurchaseRequest(); Exception errorNullItems = await Assert.ThrowsAsync <Exception>(async() => await facade.Update((int)model.Id, newModel, USERNAME)); Assert.NotNull(errorNullItems.Message); }
public GarmentPurchaseRequest CopyData(GarmentPurchaseRequest data) { return(new GarmentPurchaseRequest { UId = data.UId, Id = data.Id, Active = data.Active, CreatedUtc = data.CreatedUtc, CreatedBy = data.CreatedBy, CreatedAgent = data.CreatedAgent, LastModifiedUtc = data.LastModifiedUtc, LastModifiedBy = data.LastModifiedBy, LastModifiedAgent = data.LastModifiedAgent, IsDeleted = data.IsDeleted, DeletedUtc = data.DeletedUtc, DeletedBy = data.DeletedBy, DeletedAgent = data.DeletedAgent, PRNo = data.PRNo, PRType = data.PRType, RONo = data.RONo, MDStaff = data.MDStaff, SCId = data.SCId, SCNo = data.SCNo, BuyerId = data.BuyerId, BuyerCode = data.BuyerCode, BuyerName = data.BuyerName, Article = data.Article, Date = data.Date, ExpectedDeliveryDate = data.ExpectedDeliveryDate, ShipmentDate = data.ShipmentDate, UnitId = data.UnitId, UnitCode = data.UnitCode, UnitName = data.UnitName, IsPosted = data.IsPosted, IsUsed = data.IsUsed, IsValidated = data.IsValidated, Remark = data.Remark, ValidatedBy = data.ValidatedBy, ValidatedDate = data.ValidatedDate, }); }
public async Task Should_Success_Update_Data() { GarmentPurchaseRequestFacade facade = new GarmentPurchaseRequestFacade(ServiceProvider, _dbContext(GetCurrentMethod())); var dataUtil = this.dataUtil(facade, GetCurrentMethod()); var model = await dataUtil.GetTestData(); GarmentPurchaseRequest newModel = dataUtil.CopyData(model); newModel.Items = new List <GarmentPurchaseRequestItem>(); foreach (var item in model.Items) { newModel.Items.Add(dataUtil.CopyDataItem(item)); } var firstItem = newModel.Items.First(); firstItem.Id = 0; firstItem.PO_SerialNumber = null; var Response = await facade.Update((int)newModel.Id, newModel, USERNAME); Assert.NotEqual(Response, 0); }
public async Task <int> Create(GarmentPurchaseRequest m, string user, int clientTimeZoneOffset = 7) { int Created = 0; using (var transaction = this.dbContext.Database.BeginTransaction()) { try { EntityExtension.FlagForCreate(m, user, USER_AGENT); m.PRNo = $"PR{m.RONo}"; m.IsPosted = true; m.IsUsed = false; foreach (var item in m.Items) { EntityExtension.FlagForCreate(item, user, USER_AGENT); item.Status = "Belum diterima Pembelian"; } this.dbSet.Add(m); Created = await dbContext.SaveChangesAsync(); transaction.Commit(); } catch (Exception e) { transaction.Rollback(); throw new Exception(e.Message); } } return(Created); }
public async Task <List <GarmentInternalPurchaseOrder> > GetTestDataByTags(GarmentPurchaseRequest garmentPurchaseRequest = null) { var testData = await GetTestData(garmentPurchaseRequest); return(facade.ReadByTags($"#{testData.UnitName}#{testData.BuyerName}", DateTimeOffset.MinValue, DateTimeOffset.MinValue)); }
public async Task<List<GarmentInternalPurchaseOrder>> GetNewData(GarmentPurchaseRequest garmentPurchaseRequest = null) { return await Task.Run(() => garmentPurchaseRequestDataUtil.GetTestDataByTags(garmentPurchaseRequest)); }