public ActionResult DestroyRequestTake([DataSourceRequest] DataSourceRequest request, TmcInView dictionary) { if (dictionary != null) { TmcIn d = db.TmcIns.First(o => o.Id == dictionary.Id); db.TmcIns.Remove(d); db.SaveChanges(); } return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); }
public ActionResult DestroyApplication([DataSourceRequest] DataSourceRequest request, TmcInView model) { if (model != null) { TmcRepository tRepo = new TmcRepository(false); tRepo.RemoveTmcByPoaId(model.Id); tRepo.Save(); ApplicationPoaRepository repo = new ApplicationPoaRepository(false); TmcIn d = repo.GetAsQuarable(o => o.Id == model.Id).FirstOrDefault(); repo.Delete(d); repo.Save(); } return(Json(new[] { model }.ToDataSourceResult(request, ModelState))); }
public ActionResult UpdateRequestTake([DataSourceRequest] DataSourceRequest request, TmcInView dictionary) { if (dictionary.Id == Guid.Empty) { dictionary.Id = dictionary.TmcInId; } TmcIn d = db.TmcIns.First(o => o.Id == dictionary.Id); bool isContractChange = d.ContractNumber != dictionary.ContractNumber; d.StateType = dictionary.StateType; d.ContractDate = dictionary.ContractDate; d.ContractNumber = dictionary.ContractNumber; d.IsFullDelivery = dictionary.IsFullDelivery; d.LastDeliveryDate = dictionary.LastDeliveryDate; d.OwnerEmployeeId = dictionary.OwnerEmployeeId; d.Provider = dictionary.Provider; d.ProviderBin = dictionary.ProviderBin; d.ExecutorEmployeeId = dictionary.ExecutorEmployeeId; d.AgreementEmployeeId = dictionary.AgreementEmployeeId; d.AccountantEmployeeId = dictionary.AccountantEmployeeId; db.SaveChanges(); dictionary = db.TmcInViews.First(o => o.Id == d.Id); if (isContractChange) { TmcRepository tmcRepo = new TmcRepository(); tmcRepo.RemoveTmcByPoaId(dictionary.Id); var dicRepo = new DictionaryRepository(false); var contractProducts = tmcRepo.GetI1cLimsContractProducts(lc => lc.ContractNumber == d.ContractNumber); foreach (var prod in contractProducts.ToList()) { var measureId = dicRepo.GetDictionaryIdByTypeAndDisplayName(Dictionary.MeasureType.DicCode, prod.Unit); var t = new Tmc() { Id = Guid.NewGuid(), CreatedDate = DateTime.Now, CreatedEmployeeId = UserHelper.GetCurrentEmployee().Id, TmcInId = d.Id, StateType = 0, Number = prod.ProductId, Code = prod.ProductId, Name = prod.Name, Count = prod.QuantityVolume.Value, CountActual = prod.QuantityVolume.Value, CountFact = prod.QuantityVolume.Value, CountConvert = prod.QuantityVolume.Value, MeasureTypeDicId = measureId, MeasureTypeConvertDicId = measureId }; tmcRepo.Insert(t); } tmcRepo.Save(); } return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); }
public ActionResult UpdateApplication([DataSourceRequest] DataSourceRequest request, TmcInView model) { if (model.Id == Guid.Empty) { model.Id = model.TmcInId; } ApplicationPoaRepository repo = new ApplicationPoaRepository(false); TmcIn d = repo.GetAsQuarable(o => o.Id == model.Id).FirstOrDefault(); bool isContractChange = d.ContractNumber != model.ContractNumber; d.StateType = model.StateType; d.ContractDate = model.ContractDate; d.ContractNumber = model.ContractNumber; d.IsFullDelivery = model.IsFullDelivery; d.LastDeliveryDate = model.LastDeliveryDate; d.OwnerEmployeeId = model.OwnerEmployeeId; d.Provider = model.Provider; d.ProviderBin = model.ProviderBin; d.ExecutorEmployeeId = model.ExecutorEmployeeId; d.AgreementEmployeeId = model.AgreementEmployeeId; d.AccountantEmployeeId = model.AccountantEmployeeId; repo.Save(); model = repo.GetTmcInViews(o => o.Id == d.Id).FirstOrDefault(); if (isContractChange) { TmcRepository tmcRepo = new TmcRepository(); tmcRepo.RemoveTmcByPoaId(model.Id); var dicRepo = new DictionaryRepository(false); var contractProducts = tmcRepo.GetI1cLimsContractProducts(lc => lc.ContractNumber == d.ContractNumber); foreach (var prod in contractProducts.ToList()) { var measureId = dicRepo.GetDictionaryIdByTypeAndDisplayName(Dictionary.MeasureType.DicCode, prod.Unit); var tmc = new Tmc() { Id = Guid.NewGuid(), CreatedDate = DateTime.Now, CreatedEmployeeId = UserHelper.GetCurrentEmployee().Id, TmcInId = d.Id, StateType = 0, Number = prod.ProductId, Code = prod.ProductId, Name = prod.Name, Count = prod.QuantityVolume.Value, CountActual = prod.QuantityVolume.Value, CountFact = prod.QuantityVolume.Value, CountConvert = prod.QuantityVolume.Value, MeasureTypeDicId = measureId, MeasureTypeConvertDicId = measureId }; var tmcExist = tmcRepo.GetAsQuarable(t => t.Number == tmc.Number && t.CountFact < t.Count).FirstOrDefault(); if (tmcExist == null) { tmcRepo.Insert(tmc); var limsTmc = new LimsTmcTemp() { TmcId = tmc.Id, TmcInId = tmc.TmcInId, CreatedDate = DateTime.Now, CountRequest = tmc.Count, IsSelected = false }; repo.AddLimsTmcTemp(limsTmc); } else { var limsTmc = new LimsTmcTemp() { TmcId = tmc.Id, TmcInId = tmc.TmcInId, CreatedDate = DateTime.Now, CountRequest = prod.QuantityVolume.Value - tmcExist.CountFact, IsSelected = false }; if (prod.QuantityVolume.Value - tmcExist.CountFact > 0) { repo.AddLimsTmcTemp(limsTmc); } } } tmcRepo.Save(); repo.Save(); } return(Json(new[] { model }.ToDataSourceResult(request, ModelState))); }