public ProfitLoss ConvertGeneralLedgerResponseToProfitLoss(GeneralLedgerResponse generalLedgerResponse, string office)
        {
            Type type = Type.Sales;

            if (generalLedgerResponse.VatType == Type.Purchase.ToString().ToLower())
            {
                type = Type.Purchase;
            }

            var g = new ProfitLoss
            {
                Office = office,
                Code   = generalLedgerResponse.Code,

                Name       = generalLedgerResponse.Name,
                Financials = new Financials
                {
                    Matchtype   = MatchType.Notmatchable,
                    Accounttype = "balance",
                    Level       = 1
                }
            };
            var fin = new VatCode();

            fin.Name = generalLedgerResponse.VatName;
            fin.Type = type;
            g.Type   = generalLedgerResponse.Type;
            return(g);
        }
示例#2
0
 public async Task <VatCode> SaveVatCode(VatCode pVatCode)
 {
     if (pVatCode.Id == Guid.Empty)
     {
         return(await mAsyncCLient.AddVatCodeAsync(pVatCode));
     }
     return(await mAsyncCLient.EditVatCodeAsync(pVatCode));
 }
示例#3
0
 private SupplierInfo CreateSupplierInfo()
 {
     return(new SupplierInfo(
                taxpayerId: TestFixture.TaxPayerId,
                vatCode: VatCode.Create("2").Success.Get(),
                name: Name.Create("Supplier company").Success.Get(),
                address: CreateAddress(Countries.Hungary)
                ));
 }
示例#4
0
 private void SaveIfChanged(VatCode pVatCode, VatCode pVatCodeB10)
 {
     if (pVatCode.Name == pVatCodeB10.Name)
     {
         return;
     }
     pVatCodeB10.Name = pVatCode.Name;
     mBlue10Client.EditVatCode(pVatCodeB10);
 }
 private SupplierInfo GetSupplierInfo()
 {
     return(new SupplierInfo(
                taxpayerId: TaxpayerIdentificationNumber.Create(Countries.Hungary, "14750636").Success.Get(),
                vatCode: VatCode.Create("2").Success.Get(),
                name: Name.Create("BUDAPESTI MSZAKI S GAZDASGTUDOMNYI EGYETEM").Success.Get(),
                address: GetAddress()
                ));
 }
示例#6
0
        public void SetUp()
        {
            var vatCode = new VatCode("A", "STD UK VAT RATE.", 20, null, 1, "N");

            this.VatCodeService.GetById("A", Arg.Any <IEnumerable <string> >())
            .Returns(new SuccessResult <ResponseModel <VatCode> >(new ResponseModel <VatCode>(vatCode, new List <string>())));

            this.Response = this.Browser.Get(
                "/products/maint/vat-codes/A",
                with => { with.Header("Accept", "application/json"); }).Result;
        }
示例#7
0
        private VatCode GetFromDataRow(DataRow pRow, string pCompanyCode)
        {
            var fVatCode = new VatCode()
            {
                AdministrationCode = pRow["VatCode"].ToString().Trim(),
                Name       = pRow["Naam"].ToString().Trim(),
                Percentage = decimal.Parse(pRow["Percentage"].ToString().Trim()),
                IdCompany  = pCompanyCode
            };

            return(fVatCode);
        }
示例#8
0
        public async Task CreateOrUpdate_Validate_Failed(
            bool pAdministrationCode,
            bool pIdCompany,
            bool pName,
            VatCode pVatCodeInput,
            [Frozen] IBlue10AsyncClient pBlue10AsyncCLient,
            VatCodeService pVatCodeService)
        {
            // Setup data
            if (pAdministrationCode)
            {
                pVatCodeInput.AdministrationCode = string.Empty;
            }
            if (pIdCompany)
            {
                pVatCodeInput.IdCompany = string.Empty;
            }
            if (pName)
            {
                pVatCodeInput.Name = string.Empty;
            }

            // Setup validatione
            var fErrors = new List <string>();

            if (pAdministrationCode)
            {
                fErrors.Add("AdministrationCode is empty");
            }
            if (pIdCompany)
            {
                fErrors.Add("IdCompany is empty");
            }
            if (pName)
            {
                fErrors.Add("Name is empty");
            }
            var fExpected = string.Join(", ", fErrors);

            // Test
            var fResult = await pVatCodeService.CreateOrUpdate(pVatCodeInput);

            // Validate
            pBlue10AsyncCLient.DidNotReceive();
            fResult.Should().BeOfType <BaseResultModel <VatCode> >();
            fResult.Object.Should().BeNull();
            fResult.ErrorMessage.Should().Be(fExpected);
        }
示例#9
0
        public void SetUp()
        {
            var vatCode1 = new VatCode("A", "STD UK VAT RATE.", 20, null, 1, "N");
            var vatCode2 = new VatCode("B", "UK VAT ZERO RATE", 0, "REASON", 5, "Y");

            this.VatCodeService.GetAll(Arg.Any <IEnumerable <string> >()).Returns(
                new SuccessResult <ResponseModel <IEnumerable <VatCode> > >(
                    new ResponseModel <IEnumerable <VatCode> >(
                        new List <VatCode> {
                vatCode1, vatCode2
            },
                        new List <string>())));

            this.Response = this.Browser.Get(
                "/products/maint/vat-codes",
                with => { with.Header("Accept", "application/json"); }).Result;
        }
示例#10
0
        public async Task <BaseResultModel <VatCode> > CreateOrUpdate(VatCode pVatCode)
        {
            var fErrors = Validate(pVatCode);

            if (fErrors.Count > 0)
            {
                return(new BaseResultModel <VatCode>(null, string.Join(", ", fErrors)));
            }


            if (pVatCode.Id != Guid.Empty)
            {
                return(await TryVendorTask(_blue10.EditVatCodeAsync(pVatCode)));
            }

            pVatCode.Id = Guid.NewGuid();
            return(await TryVendorTask(_blue10.AddVatCodeAsync(pVatCode)));
        }
示例#11
0
        public void SetUp()
        {
            this.requestResource = new VatCodeResource {
                Code = "A"
            };
            var vatCode = new VatCode("A", "STD UK VAT RATE.", 20, null, 1, "N");

            this.VatCodeService.Add(Arg.Any <VatCodeResource>(), Arg.Any <IEnumerable <string> >())
            .Returns(new CreatedResult <ResponseModel <VatCode> >(new ResponseModel <VatCode>(vatCode, new List <string>())));
            this.Response = this.Browser.Post(
                "/products/maint/vat-codes",
                with =>
            {
                with.Header("Accept", "application/json");
                with.Header("Content-Type", "application/json");
                with.JsonBody(this.requestResource);
            }).Result;
        }
示例#12
0
        private List <string> Validate(VatCode pVatCode)
        {
            var fErrors = new List <string>();

            if (string.IsNullOrWhiteSpace(pVatCode.AdministrationCode))
            {
                fErrors.Add("AdministrationCode is empty");
            }
            if (string.IsNullOrWhiteSpace(pVatCode.IdCompany))
            {
                fErrors.Add("IdCompany is empty");
            }
            if (string.IsNullOrWhiteSpace(pVatCode.Name))
            {
                fErrors.Add("Name is empty");
            }

            return(fErrors);
        }
示例#13
0
        public async Task CreateOrUpdate_Update_Success(
            VatCode pVatCodeInput,
            VatCode pVatCodeResult,
            [Frozen] IBlue10AsyncClient pBlue10AsyncCLient,
            VatCodeService pVatCodeService)
        {
            // Setup services
            pBlue10AsyncCLient.EditVatCodeAsync(Arg.Any <VatCode>()).Returns(pVatCodeResult);

            // Test
            var fResult = await pVatCodeService.CreateOrUpdate(pVatCodeInput);

            // Validate
            pBlue10AsyncCLient.Received(1);
            await pBlue10AsyncCLient.Received().EditVatCodeAsync(Arg.Is <VatCode>(x => x.Equals(pVatCodeInput)));

            fResult.Should().BeOfType <BaseResultModel <VatCode> >();
            fResult.ErrorMessage.Should().BeNull();
            fResult.Object.Should().Be(pVatCodeResult);
        }
示例#14
0
 public VatCode EditVatCode(VatCode pVatCode) =>
 SyncHelper.RunAsyncAsSync(() =>
                           EditAndReturnItem(pVatCode, $"{VATCODES}/{pVatCode.Id}"));
示例#15
0
 public bool DeleteVatCode(VatCode pVatCode) => mBlue10Async.DeleteVatCodeAsync(pVatCode).Sync();
示例#16
0
 public VatCode EditVatCode(VatCode pVatCode) => mBlue10Async.EditVatCodeAsync(pVatCode).Sync();
示例#17
0
 public VatCode AddVatCode(VatCode pVatCode) =>
 mBlue10Async.AddVatCodeAsync(pVatCode).Sync();
示例#18
0
 public Task <VatCode> AddVatCodeAsync(VatCode pVatCode) =>
 AddItem(pVatCode, VATCODES);
示例#19
0
 public VatCode AddVatCode(VatCode pVatCode) =>
 SyncHelper.RunAsyncAsSync(() => AddItem(pVatCode, VATCODES));
示例#20
0
 public bool DeleteVatCode(VatCode pVatCode) =>
 SyncHelper.RunAsyncAsSync(() =>
                           DeleteItem($"{VATCODES}/{pVatCode.Id}"));
示例#21
0
 public async Task <bool> DeleteVatCode(VatCode pVatCode)
 {
     return(await mAsyncCLient.DeleteVatCodeAsync(pVatCode));
 }
示例#22
0
 public Task <VatCode> EditVatCodeAsync(VatCode pVatCode) =>
 EditAndReturnItem(pVatCode, $"{VATCODES}/{pVatCode.Id}");
示例#23
0
 public Task <bool> DeleteVatCodeAsync(VatCode pVatCode) =>
 DeleteItem($"{VATCODES}/{pVatCode.Id}");
示例#24
0
 public void SetUpContext()
 {
     this.Sut = new VatCode("A", "STD UK VAT RATE.", 20, null, 1, "N");
 }