public async Task <ActionResult> Post([FromBody] MemoDetailGarmentPurchasingViewModel viewModel) { try { VerifyUser(); _validateService.Validate(viewModel); MemoDetailGarmentPurchasingModel model = _mapper.Map <MemoDetailGarmentPurchasingModel>(viewModel); await _service.CreateAsync(model); var result = new ResultFormatter(ApiVersion, General.CREATED_STATUS_CODE, General.OK_MESSAGE).Ok(); return(Created(String.Concat(Request.Path, "/", 0), result)); } catch (ServiceValidationException e) { var result = new ResultFormatter(ApiVersion, General.BAD_REQUEST_STATUS_CODE, General.BAD_REQUEST_MESSAGE).Fail(e); return(BadRequest(result)); } catch (Exception e) { var result = new ResultFormatter(ApiVersion, General.INTERNAL_ERROR_STATUS_CODE, e.Message) .Fail(); return(StatusCode(General.INTERNAL_ERROR_STATUS_CODE, result)); } }
public void CreateModel(MemoDetailGarmentPurchasingModel model) { EntityExtension.FlagForCreate(model, _identityService.Username, UserAgent); foreach (var item in model.MemoDetailGarmentPurchasingDetail) { EntityExtension.FlagForCreate(item, _identityService.Username, UserAgent); } DbSet.Add(model); }
public async Task DeleteModel(int id) { MemoDetailGarmentPurchasingModel model = await ReadByIdAsync(id); foreach (var item in model.MemoDetailGarmentPurchasingDetail) { EntityExtension.FlagForDelete(item, _identityService.Username, UserAgent, true); } EntityExtension.FlagForDelete(model, _identityService.Username, UserAgent, true); DbSet.Update(model); }
public async Task <int> CreateAsync(MemoDetailGarmentPurchasingModel model) { try { CreateModel(model); return(await _dbContext.SaveChangesAsync()); } catch (Exception e) { throw e; } }
public void UpdateModel(int id, EditDetailRincian viewModel) { MemoDetailGarmentPurchasingModel existDb = DbSet .Include(d => d.MemoDetailGarmentPurchasingDetail) .Single(memoDetail => memoDetail.Id == id && !memoDetail.IsDeleted); existDb.MemoId = viewModel.MemoId; existDb.Remarks = viewModel.Remarks; existDb.MemoNo = viewModel.MemoNo; existDb.MemoDate = viewModel.MemoDate; existDb.AccountingBookId = viewModel.AccountingBookId; existDb.AccountingBookType = viewModel.AccountingBookType; existDb.GarmentCurrenciesId = viewModel.GarmentCurrenciesId; existDb.GarmentCurrenciesCode = viewModel.GarmentCurrenciesCode; existDb.GarmentCurrenciesRate = viewModel.GarmentCurrenciesRate; existDb.IsPosted = viewModel.IsPosted; EntityExtension.FlagForUpdate(existDb, _identityService.Username, UserAgent); DbSet.Update(existDb); foreach (var existRow in existDb.MemoDetailGarmentPurchasingDetail) { EditDetailRincianItems itemModel = viewModel.Items.FirstOrDefault(p => p.Id.Equals(existRow.Id)); if (itemModel == null) { EntityExtension.FlagForDelete(existRow, _identityService.Username, UserAgent); } else { existRow.GarmentDeliveryOrderId = itemModel.GarmentDeliveryOrderId; existRow.GarmentDeliveryOrderNo = itemModel.GarmentDeliveryOrderNo; existRow.RemarksDetail = itemModel.RemarksDetail; existRow.PaymentRate = itemModel.PaymentRate; existRow.PurchasingRate = itemModel.PurchasingRate; existRow.MemoAmount = itemModel.MemoAmount; existRow.MemoIdrAmount = itemModel.MemoIdrAmount; EntityExtension.FlagForUpdate(existRow, _identityService.Username, UserAgent); } } _dbContext.MemoDetailGarmentPurchasingDetails.UpdateRange(existDb.MemoDetailGarmentPurchasingDetail); foreach (var item in viewModel.Items) { if (item.Id == 0) { MemoDetailGarmentPurchasingDetailModel model = new MemoDetailGarmentPurchasingDetailModel(); model.GarmentDeliveryOrderId = item.GarmentDeliveryOrderId; model.GarmentDeliveryOrderNo = item.GarmentDeliveryOrderNo; model.RemarksDetail = item.RemarksDetail; model.PaymentRate = item.PaymentRate; model.PurchasingRate = item.PurchasingRate; model.MemoAmount = item.MemoAmount; model.MemoIdrAmount = item.MemoIdrAmount; model.MemoDetailId = id; EntityExtension.FlagForCreate(model, _identityService.Username, UserAgent); DbSetDetail.Add(model); } } }
//public void CreateModel(MemoDetailGarmentPurchasingModel model) //{ // EntityExtension.FlagForCreate(model, _identityService.Username, UserAgent); // foreach (var item in model.MemoDetailGarmentPurchasingDetail) // { // EntityExtension.FlagForCreate(item, _identityService.Username, UserAgent); // } // DbSet.Add(model); //} public async Task <int> CreateAsync(MemoDetailGarmentPurchasingViewModel viewModel) { try { var memo = _dbContext.MemoGarmentPurchasings.FirstOrDefault(entity => entity.Id == viewModel.MemoId); var model = new MemoDetailGarmentPurchasingModel() { AccountingBookId = memo.AccountingBookId, AccountingBookType = memo.AccountingBookType, GarmentCurrenciesCode = memo.GarmentCurrenciesCode, GarmentCurrenciesId = memo.GarmentCurrenciesId, GarmentCurrenciesRate = memo.GarmentCurrenciesRate, MemoDate = memo.MemoDate, MemoId = viewModel.MemoId, MemoNo = memo.MemoNo, Remarks = viewModel.Remarks }; EntityExtension.FlagForCreate(model, _identityService.Username, UserAgent); _dbContext.MemoDetailGarmentPurchasings.Add(model); await _dbContext.SaveChangesAsync(); foreach (var item in viewModel.MemoDetailGarmentPurchasingDispositions) { var memoItem = new MemoDetailGarmentPurchasingDispositionModel() { DispositionId = item.Disposition.DispositionId, DispositionNo = item.Disposition.DispositionNo, MemoDetailGarmentPurchasingId = model.Id }; EntityExtension.FlagForCreate(memoItem, _identityService.Username, UserAgent); _dbContext.MemoDetailGarmentPurchasingDispositions.Add(memoItem); await _dbContext.SaveChangesAsync(); foreach (var detail in item.Disposition.MemoDetails) { var memoDetail = new MemoDetailGarmentPurchasingDetailModel() { GarmentDeliveryOrderId = detail.GarmentDeliveryOrderId, GarmentDeliveryOrderNo = detail.GarmentDeliveryOrderNo, MemoAmount = (int)detail.MemoAmount, MemoDispositionId = memoItem.Id, RemarksDetail = detail.RemarksDetail, MemoDetailId = model.Id, MemoId = memo.Id, PaymentRate = detail.PaymentRate, PurchasingRate = detail.PurchasingRate, SupplierCode = detail.SupplierCode, SupplierName = detail.SupplierName, BillsNo = detail.BillsNo, InternalNoteNo = detail.InternalNoteNo, CurrencyCode = detail.CurrencyCode, PaymentBills = detail.PaymentBills, PurchaseAmount = detail.PurchaseAmount }; EntityExtension.FlagForCreate(memoDetail, _identityService.Username, UserAgent); _dbContext.MemoDetailGarmentPurchasingDetails.Add(memoDetail); await _dbContext.SaveChangesAsync(); } } return(await _dbContext.SaveChangesAsync()); } catch (Exception e) { throw e; } }