private EmpContractDeclarantViewModel GetDeclarant(OBK_Declarant declarant, OBK_DeclarantContact declarantContact) { return(new EmpContractDeclarantViewModel { IsResident = declarant.IsResident, NameKz = declarant.NameKz, NameRu = declarant.NameRu, NameEn = declarant.NameEn, Countries = GetDictionaryList("Country", declarant.CountryId), Bin = declarant.Bin, OrganizationForms = GetDictionaryList("OpfType", declarant.OrganizationFormId), NonResidentsNames = GetNonResidentNameList(declarant.CountryId), BossLastName = declarantContact.BossLastName, BossFirstName = declarantContact.BossFirstName, BossMiddleName = declarantContact.BossMiddleName, BossPositionRu = declarantContact.BossPosition, BossPositionKz = declarantContact.BossPositionKz, AddressLegal = declarantContact.AddressLegalRu, AddressFact = declarantContact.AddressFact, Phone = declarantContact.Phone, Email = declarantContact.Email, BankName = declarantContact.BankNameRu, BankIik = declarantContact.BankIik, Currencies = GetDictionaryList("Currency", declarantContact.CurrencyId), BankBik = declarantContact.BankBik, Iin = declarant.Iin, BankAccount = declarantContact.BankAccount, IsHasBossDocNumber = declarantContact.IsHasBossDocNumber ? "Да" : "Нет", BossDocNumber = declarantContact.BossDocNumber, BossDocUnlimited = declarantContact.BossDocUnlimited ? "Да" : "Нет", BossDosCreateDate = declarantContact.BossDocCreatedDate != null?declarantContact.BossDocCreatedDate.Value.ToString("dd-MM-yyyy") : string.Empty, BossDocEndDate = declarantContact.BossDocEndDate != null?declarantContact.BossDocEndDate.Value.ToString("dd-MM-yyyy") : string.Empty }); }
private object GetDeclarantJson(OBK_Declarant organization) { if (organization != null) { var declarantContact = organization.OBK_DeclarantContact.OrderByDescending(x => x.CreateDate).FirstOrDefault(); if (declarantContact != null) { var declarantJson = new { organization.Id, organization.OrganizationFormId, organization.IsResident, organization.NameKz, organization.NameRu, organization.NameEn, organization.CountryId, DeclarantContractId = declarantContact.Id, declarantContact.AddressLegalRu, declarantContact.AddressLegalKz, declarantContact.AddressFact, declarantContact.Phone, declarantContact.Phone2, declarantContact.Email, declarantContact.BossLastName, declarantContact.BossFirstName, declarantContact.BossMiddleName, declarantContact.BossPosition, declarantContact.BossPositionKz, declarantContact.BossDocType, declarantContact.IsHasBossDocNumber, declarantContact.BossDocNumber, declarantContact.BossDocCreatedDate, declarantContact.BossDocEndDate, declarantContact.BossDocUnlimited, declarantContact.SignerIsBoss, declarantContact.SignLastName, declarantContact.SignFirstName, declarantContact.SignMiddleName, declarantContact.SignPosition, declarantContact.SignPositionKz, declarantContact.SignDocType, declarantContact.IsHasSignDocNumber, declarantContact.SignDocNumber, declarantContact.SignDocCreatedDate, declarantContact.SignDocEndDate, declarantContact.SignDocUnlimited, declarantContact.BankIik, declarantContact.BankBik, declarantContact.CurrencyId, declarantContact.BankNameRu, declarantContact.BankNameKz, declarantContact.BankAccount, declarantContact.BankId }; return(declarantJson); } else { var declarantJson = new { organization.Id, organization.OrganizationFormId, organization.IsResident, organization.NameKz, organization.NameRu, organization.NameEn, organization.CountryId }; return(declarantJson); } } return(null); }
public OBK_Declarant ContractDeclarantSave(Guid guid, OBKDeclarantViewModel declarantViewModel, out bool declarantAlreadyExist) { declarantAlreadyExist = false; if (declarantViewModel.Id != null) { OBK_Declarant declarant = AppContext.OBK_Declarant.Where(x => x.Id == declarantViewModel.Id).FirstOrDefault(); if (declarant != null && !declarant.IsConfirmed) { declarant.OrganizationFormId = declarantViewModel.OrganizationFormId; declarant.NameKz = declarantViewModel.NameKz; declarant.NameRu = declarantViewModel.NameRu; declarant.NameEn = declarantViewModel.NameEn; declarant.CountryId = declarantViewModel.CountryId; declarant.IsResident = declarantViewModel.IsResident; if (declarant.IsResident) { declarant.Bin = declarantViewModel.Bin; } else { declarant.Bin = null; } AppContext.SaveChanges(); return(declarant); } } else { if (declarantViewModel.IsResident) { declarantAlreadyExist = DeclarantExist(declarantViewModel.Id, declarantViewModel.Bin); } else { declarantAlreadyExist = DeclarantExist(declarantViewModel.Id, declarantViewModel.NameRu, declarantViewModel.CountryId); } if (!declarantAlreadyExist) { var contract = AppContext.OBK_Contract.Where(x => x.Id == guid).FirstOrDefault(); if (contract != null) { if (contract.DeclarantId != null) { var existingDeclarant = AppContext.OBK_Declarant.Where(x => x.Id == contract.DeclarantId).FirstOrDefault(); if (!existingDeclarant.IsConfirmed) { AppContext.OBK_Declarant.Remove(existingDeclarant); contract.DeclarantId = null; AppContext.SaveChanges(); } } OBK_Declarant declarant = new OBK_Declarant(); declarant.Id = Guid.NewGuid(); declarant.IsConfirmed = false; declarant.OrganizationFormId = declarantViewModel.OrganizationFormId; declarant.NameKz = declarantViewModel.NameKz; declarant.NameRu = declarantViewModel.NameRu; declarant.NameEn = declarantViewModel.NameEn; declarant.CountryId = declarantViewModel.CountryId; declarant.IsResident = declarantViewModel.IsResident; if (declarant.IsResident) { declarant.Bin = declarantViewModel.Bin; } else { declarant.Bin = null; } AppContext.OBK_Declarant.Add(declarant); AppContext.SaveChanges(); contract.DeclarantId = declarant.Id; var contact = AppContext.OBK_DeclarantContact.Where(x => x.Id == contract.DeclarantContactId).FirstOrDefault(); if (contact != null) { contact.DeclarantId = contract.DeclarantId; } AppContext.SaveChanges(); return(declarant); } } } return(null); }