public Task <int> MappingData(VbNonPORequestViewModel viewModel) { var result = new List <VbRequestDetailModel>(); var myProperty = viewModel.GetType().GetProperties(); int value = int.Parse(dbSet.OrderByDescending(p => p.Id) .Select(r => r.Id) .First().ToString()); foreach (var prop in myProperty.Where(x => x.PropertyType == typeof(bool))) { if ((bool)prop.GetValue(viewModel)) { var item = new VbRequestDetailModel() { VBId = value, UnitName = prop.Name }; if (prop.Name.ToUpper() == "OTHERS") { item.DetailOthers = viewModel.DetailOthers; } EntityExtension.FlagForCreate(item, _identityService.Username, UserAgent); _dbContext.VbRequestsDetails.Add(item); //_dbContext.SaveChangesAsync(); } } return(_dbContext.SaveChangesAsync()); }
public Task <int> MappingData(VbWithPORequestViewModel viewmodel) { var result = new List <VbRequestDetailModel>(); int value = int.Parse(_DbSet.OrderByDescending(p => p.Id) .Select(r => r.Id) .First().ToString()); string VbNo = _DbSet.OrderByDescending(p => p.Id) .Select(r => r.VBNo) .First().ToString(); foreach (var itm1 in viewmodel.Items) { foreach (var itm2 in itm1.Details) { var item = new VbRequestDetailModel() { VBNo = VbNo, PONo = itm1.no, //POId = itm1._id.GetValueOrDefault(), UnitName = itm1.unit.Name, VBId = value, ProductId = itm2.product._id, ProductCode = itm2.product.code, ProductName = itm2.product.name, DefaultQuantity = itm2.defaultQuantity, DefaultUOMId = itm2.defaultUom._id, DefaultUOMUnit = itm2.defaultUom.unit, DealQuantity = itm2.dealQuantity, DealUOMId = itm2.dealUom._id, DealUOMUnit = itm2.dealUom.unit, Conversion = itm2.Conversion, Price = itm2.priceBeforeTax, ProductRemark = itm2.productRemark, IsUseVat = itm2.includePpn, POExtUseVat = itm2.useVat, POId = itm1._id.GetValueOrDefault(), UnitId = itm1.unit.Id }; EntityExtension.FlagForCreate(item, _identityService.Username, UserAgent); _dbContext.VbRequestsDetails.Add(item); } } return(_dbContext.SaveChangesAsync()); }
public VbRequestModel MappingData2(VbNonPORequestViewModel viewModel) { var listDetail = new List <VbRequestDetailModel>(); var myProperty = viewModel.GetType().GetProperties(); int value = int.Parse(dbSet.OrderByDescending(p => p.Id) .Select(r => r.Id) .First().ToString()); foreach (var prop in myProperty.Where(x => x.PropertyType == typeof(bool))) { if ((bool)prop.GetValue(viewModel)) { var item = new VbRequestDetailModel() { VBId = value, UnitName = prop.Name, LastModifiedBy = viewModel.LastModifiedBy, LastModifiedAgent = viewModel.LastModifiedAgent, DeletedBy = "", DeletedAgent = "", CreatedBy = viewModel.CreatedBy, CreatedAgent = viewModel.CreatedAgent, }; if (prop.Name.ToUpper() == "OTHERS") { item.DetailOthers = viewModel.DetailOthers; } listDetail.Add(item); //EntityExtension.FlagForCreate(item, _identityService.Username, UserAgent); //_dbContext.VbRequestsDetails.Add(item); //_dbContext.SaveChangesAsync(); } } var result = new VbRequestModel() { VbRequestDetail = listDetail, Active = viewModel.Active, Id = viewModel.Id, Date = (DateTimeOffset)viewModel.Date, DateEstimate = (DateTimeOffset)viewModel.DateEstimate, UnitId = viewModel.Unit.Id, UnitCode = viewModel.Unit.Code, UnitName = viewModel.Unit.Name, UnitDivisionId = viewModel.Division.Id, UnitDivisionName = viewModel.Division.Name, VBNo = viewModel.VBNo, CurrencyId = viewModel.Currency.Id, CurrencyCode = viewModel.Currency.Code, CurrencyRate = viewModel.Currency.Rate, CurrencySymbol = viewModel.Currency.Symbol, CurrencyDescription = viewModel.Currency.Description, Amount = viewModel.Amount, Usage = viewModel.Usage, UnitLoad = viewModel.UnitLoad, CreatedBy = viewModel.CreatedBy, CreatedAgent = viewModel.CreatedAgent, LastModifiedAgent = viewModel.LastModifiedAgent, LastModifiedBy = viewModel.LastModifiedBy, LastModifiedUtc = DateTime.Now, CreatedUtc = viewModel.CreatedUtc }; return(result); }
public VbRequestModel MappingData2(int id, VbWithPORequestViewModel viewModel) { var listDetail = new List <VbRequestDetailModel>(); foreach (var itm1 in viewModel.Items) { foreach (var itm2 in itm1.Details) { var item = new VbRequestDetailModel() { //Id = itm2.Id, VBId = id, POId = itm1._id.GetValueOrDefault(), PONo = itm1.no, VBNo = viewModel.VBNo, UnitName = itm1.unit.Name, UnitId = itm1.unit.Id, Conversion = itm2.Conversion, DealQuantity = itm2.dealQuantity, DealUOMId = itm2.dealUom._id, DealUOMUnit = itm2.dealUom.unit, DefaultQuantity = itm2.defaultQuantity, DefaultUOMId = itm2.defaultUom._id, DefaultUOMUnit = itm2.defaultUom.unit, Price = itm2.priceBeforeTax, ProductCode = itm2.product.code, ProductId = itm2.product._id, ProductName = itm2.product.name, ProductRemark = itm2.productRemark, LastModifiedBy = viewModel.LastModifiedBy, LastModifiedAgent = viewModel.LastModifiedAgent, DeletedBy = "", DeletedAgent = "", CreatedBy = viewModel.CreatedBy, CreatedAgent = viewModel.CreatedAgent, IsUseVat = itm2.includePpn, }; listDetail.Add(item); } } string IncomeTaxBy = ""; string IncomeTaxId = ""; string IncomeTaxName = ""; string IncomeTaxRate = ""; string temp = ""; decimal Amount = 0; foreach (var itm in viewModel.Items) { if (string.IsNullOrEmpty(itm.IncomeTax._id)) { IncomeTaxId = ""; } else { IncomeTaxId = itm.IncomeTax._id; } if (string.IsNullOrEmpty(itm.IncomeTax.Name)) { IncomeTaxName = ""; } else { IncomeTaxName = itm.IncomeTax.Name; } if (string.IsNullOrEmpty(itm.IncomeTax.Rate)) { IncomeTaxRate = ""; } else { IncomeTaxRate = itm.IncomeTax.Rate; } if (string.IsNullOrEmpty(itm.IncomeTaxBy)) { IncomeTaxBy = ""; } else { IncomeTaxBy = itm.IncomeTaxBy; } foreach (var itm2 in itm.Details) { Amount += itm2.priceBeforeTax * itm2.dealQuantity; } IncomeTaxBy = itm.IncomeTaxBy; IncomeTaxId = itm.IncomeTax._id; IncomeTaxName = itm.IncomeTax.Name; IncomeTaxRate = itm.IncomeTax.Rate; temp += itm.unit.Name + ", "; temp = temp.Remove(temp.Length - 2); } var result = new VbRequestModel() { VbRequestDetail = listDetail, Active = viewModel.Active, Id = viewModel.Id, Date = (DateTimeOffset)viewModel.Date, DateEstimate = (DateTimeOffset)viewModel.DateEstimate, UnitId = viewModel.Unit.Id, UnitCode = viewModel.Unit.Code, UnitName = viewModel.Unit.Name, VBNo = viewModel.VBNo, CreatedUtc = viewModel.CreatedUtc, CreatedBy = viewModel.CreatedBy, CreatedAgent = viewModel.CreatedAgent, LastModifiedUtc = DateTime.Now, LastModifiedAgent = viewModel.LastModifiedAgent, LastModifiedBy = viewModel.LastModifiedBy, VBMoney = viewModel.VBMoney, Usage_Input = viewModel.Usage, CurrencyId = viewModel.Currency.Id, CurrencyCode = viewModel.Currency.Code, CurrencyRate = viewModel.Currency.Rate, CurrencySymbol = viewModel.Currency.Symbol, CurrencyDescription = viewModel.Currency.Symbol, Amount = Amount, UnitDivisionId = viewModel.Division.Id, UnitDivisionName = viewModel.Division.Name, IncomeTaxBy = IncomeTaxBy, IncomeTaxId = IncomeTaxId, IncomeTaxName = IncomeTaxName, IncomeTaxRate = IncomeTaxRate, UnitLoad = temp, VBRequestCategory = "PO", Apporve_Status = false, Complete_Status = false }; return(result); }