public static WFExchangeData PostModirAction(ActionMethodParams actionMethodParams) { int contractId = actionMethodParams.InitialExchangeData[WfConstants.RelatedRecordIdKey].ConvertTo <int>(); WFExchangeData ex = (WFExchangeData)actionMethodParams.WorkflowInstanceState.ExchangeData; ContractRule contractRule = new ContractRule(UnitOfWork); DomainClasses.Contract.Contract contract = contractRule.Find(contractId); if (contract == null) { throw new OMFValidationException($" قرارداد با شناسه ثبت شده یافت نشد. شناسه: {contractId}"); } if (actionMethodParams.ContinueInfo.ActionId == (int)WorkFlowActionType.Taeed) { contract.Status = Status.ConfirmationContract; contractRule.Update(contract); contractRule.SaveChanges(); InvoiceRule invoiceRule = new InvoiceRule(UnitOfWork); invoiceRule.ConvertContractToInvoice(contract.ID, NoeFactor.RentFrom); } return(ex); }
public static WFExchangeData PostModirDakhiliAction(ActionMethodParams actionMethodParams) { try { int contractId = actionMethodParams.InitialExchangeData[WfConstants.RelatedRecordIdKey].ConvertTo <int>(); WFExchangeData ex = (WFExchangeData)actionMethodParams.WorkflowInstanceState.ExchangeData; ContractRule contractRule = new ContractRule(UnitOfWork); DomainClasses.Contract.Contract contract = contractRule.Find(contractId); if (contract == null) { throw new OMFValidationException($" قرارداد با شناسه ثبت شده یافت نشد. شناسه: {contractId}"); } if (actionMethodParams.ContinueInfo.ActionId == (int)WorkFlowActionType.TabdelPishghrardadBeGharardad) { using (var uow = new UnitOfWork()) { contract.Status = Status.ConfirmationPreContract; contract.ContractType = ContractType.RentTo; // var contract_Sazes = uow.Repository<Contract_Saze>().Queryable().Where(x => x.ContractID == contract.ID).ToList(); foreach (var contract_Saze in contract.Contract_Sazes ?? new List <Contract_Saze>()) { contract_Saze.Status = Status.ConfirmationPreContract; contract_Saze.ObjectState = OMF.Common.Enums.ObjectState.Modified; } uow.Repository <DomainClasses.Contract.Contract>().Update(contract); uow.SaveChanges(); } InvoiceRule invoiceRule = new InvoiceRule(UnitOfWork); var invoice = invoiceRule.ConvertContractToInvoice(contract.ID, NoeFactor.RentTo); var document = invoiceRule.RegisterDocument(invoice, invoice.OrganId); DocumentRule documentRule = new DocumentRule(); documentRule.Insert(document, invoice.OrganId); documentRule.SaveChanges(); } return(ex); } catch (Exception ex) { throw; } }
public bool Insert(DomainClasses.Contract.Contract contract) { try { _contracts.Add(contract); return(true); } catch (Exception) { return(false); } }
public bool Delete(DomainClasses.Contract.Contract contract) { try { _contracts.Attach(contract); _contracts.Remove(contract); return(true); } catch (Exception) { return(false); } }
public static WFExchangeData PostModirAction(ActionMethodParams actionMethodParams) { int contractSazeId = actionMethodParams.InitialExchangeData[WfConstants.RelatedRecordIdKey].ConvertTo <int>(); WFExchangeData ex = (WFExchangeData)actionMethodParams.WorkflowInstanceState.ExchangeData; Contract_SazeRule contract_SazeRule = new Contract_SazeRule(UnitOfWork); Contract_Saze contract_Saze = contract_SazeRule.Find(contractSazeId); if (contract_Saze == null) { throw new OMFValidationException($"رسانه قرارداد با شناسه ثبت شده یافت نشد. شناسه: {contractSazeId}"); } ContractRule contractRule = new ContractRule(UnitOfWork); DomainClasses.Contract.Contract contract = contractRule.Find(contract_Saze.ContractID); if (actionMethodParams.ContinueInfo.ActionId == (int)WorkFlowActionType.TaeedVaKhateme) { contract_Saze.Status = Status.ConfirmationContract; contract_SazeRule.Update(contract_Saze); contract_SazeRule.SaveChanges(); if (contract.Contract_Sazes.All(x => x.Status == Status.ConfirmationContract)) { contract.Status = Status.ConfirmationContract; contractRule.Update(contract); contractRule.SaveChanges(); } } return(ex); }
public bool Update(DomainClasses.Contract.Contract contract) { try { var oldContract = _uow.Set <DomainClasses.Contract.Contract>() .Local .FirstOrDefault(f => f.ID == contract.ID); if (oldContract != null) { _uow.Entry(oldContract).State = EntityState.Detached; } //foreach (var contract_Saze in contract.Contract_Sazes ?? new List<Contract_Saze>()) //{ // var oldContract_Saze = _uow.Set<Contract_Saze>().Local.FirstOrDefault(f => f.ID == contract_Saze.ID); // if (oldContract_Saze != null) // { // _uow.Entry(oldContract_Saze).State = EntityState.Detached; // //if (contract_Saze.Contarct_Saze_Bazareabs != null) // //{ // // var oldContarct_Saze_Bazareab = _uow.Set<Contract_Saze_Bazareab>().Local.ToList(f => f.ID == contract_Saze.Contarct_Saze_Bazareabs.ID); // // if (oldContarct_Saze_Bazareab != null) // // { // // _uow.Entry(oldContarct_Saze_Bazareab).State = EntityState.Detached; // // } // //} // //if (contract_Saze.Contract_Saze_Tarahs != null) // //{ // // var oldContract_Saze_Tarah = _uow.Set<Contract_Saze_Tarah>().Local.FirstOrDefault(f => f.ID == contract_Saze.Contract_Saze_Tarah.ID); // // if (oldContract_Saze_Tarah != null) // // { // // _uow.Entry(oldContract_Saze_Tarah).State = EntityState.Detached; // // } // //} // //if (contract_Saze.Contract_Saze_Nasabs != null) // //{ // // var oldContract_Saze_Nasab = _uow.Set<Contract_Saze_Nasab>().Local.FirstOrDefault(f => f.ID == contract_Saze.Contract_Saze_Nasab.ID); // // if (oldContract_Saze_Nasab != null) // // { // // _uow.Entry(oldContract_Saze_Nasab).State = EntityState.Detached; // // } // //} // //if (contract_Saze.Contract_Saze_Chapkhanes != null) // //{ // // var oldContract_Saze_Chapkhane = _uow.Set<Contract_Saze_Chapkhane>().Local.FirstOrDefault(f => f.ID == contract_Saze.Contract_Saze_Chapkhane.ID); // // if (oldContract_Saze_Chapkhane != null) // // { // // _uow.Entry(oldContract_Saze_Chapkhane).State = EntityState.Detached; // // } // //} // } //} _contracts.Attach(contract); _uow.Entry(contract).State = EntityState.Modified; //foreach (var Contract_Saze in contract.Contract_Sazes) //{ // foreach (var Contarct_Saze_Bazareab in Contract_Saze.Contarct_Saze_Bazareabs) // { // if (Contarct_Saze_Bazareab.ID > 0) // { // _uow.Entry(Contarct_Saze_Bazareab).State = EntityState.Modified; // } // else // { // _uow.Entry(Contarct_Saze_Bazareab).State = EntityState.Added; // } // } // foreach (var Contract_Saze_Nasab in Contract_Saze.Contract_Saze_Nasabs) // { // if (Contract_Saze_Nasab.ID > 0) // { // _uow.Entry(Contract_Saze_Nasab).State = EntityState.Modified; // } // else // { // _uow.Entry(Contract_Saze_Nasab).State = EntityState.Added; // } // } // foreach (var Contract_Saze_Chapkhane in Contract_Saze.Contract_Saze_Chapkhanes) // { // if (Contract_Saze_Chapkhane.ID > 0) // { // _uow.Entry(Contract_Saze_Chapkhane).State = EntityState.Modified; // } // else // { // _uow.Entry(Contract_Saze_Chapkhane).State = EntityState.Added; // } // } // foreach (var Contract_Saze_Tarah in Contract_Saze.Contract_Saze_Tarahs) // { // if (Contract_Saze_Tarah.ID > 0) // { // _uow.Entry(Contract_Saze_Tarah).State = EntityState.Modified; // } // else // { // _uow.Entry(Contract_Saze_Tarah).State = EntityState.Added; // } // } // if (Contract_Saze.ID > 0) // { // _uow.Entry(Contract_Saze).State = EntityState.Modified; // } // else // _uow.Entry(Contract_Saze).State = EntityState.Added; // } return(true); } catch (Exception ex) { return(false); } }