Exemple #1
0
        public EconomicInvoiceCreateRequest(EconomicInvoiceCreateModel model) : this()
        {
            if (!string.IsNullOrEmpty(model.Id))
            {
                Id = model.Id;
            }

            EconomicContractDate    = model.EconomicContractDate.ConvertToString();
            EconocmicContractNumber = model.EconocmicContractNumber;
            DeliveryBy         = model.DeliveryBy;
            ContractNumber     = model.ContractNumber;
            FromWarehouseName  = model.FromWarehouseName;
            ToWarehouseName    = model.ToWarehouseName;
            TransactionMethod  = model.TransactionMethod;
            TemplateNo         = model.TemplateNo;
            SerialNo           = model.SerialNo;
            InvoiceTypeCode    = model.InvoiceTypeCode;
            Currency           = model.Currency;
            ExchangeRate       = model.ExchangeRate;
            TotalPaymentAmount = model.TotalPaymentAmount;
            BuyerAddressLine   = model.BuyerAddressLine;
            BuyerFullName      = model.BuyerFullName;
            BuyerLegalName     = model.BuyerLegalName;
            BuyerTaxCode       = model.BuyerTaxCode;
            Details            = new List <EconomicInvoiceDetail>();
            if (model.Details != null)
            {
                Details.AddRange(model.Details.Select(c => new EconomicInvoiceDetail(c)));
                if (model.TotalPaymentAmount == 0)
                {
                    TotalPaymentAmount = model.Details.Sum(c => c.UnitPrice * c.Quantity);
                }
            }
        }
Exemple #2
0
        /// <summary>
        ///     Tạo phiếu xuất hàng gửi đại lý
        /// </summary>
        /// <param name="authentication"></param>
        /// <param name="model"></param>
        /// <returns></returns>
        public MessageResult EconomicCreate(Authentication authentication,
                                            EconomicInvoiceCreateModel model)
        {
            MessageResult result = new MessageResult();

            try
            {
                var token = GetToken(authentication);

                if (!string.IsNullOrEmpty(token))
                {
                    string apiLink = $"{authentication.DomainName}/api/invoice04-api/creates";

                    EconomicInvoiceCreateRequest request = new EconomicInvoiceCreateRequest(model);

                    var rawResponse = AppUtil.CreateRequest(apiLink,
                                                            request.ToJson(),
                                                            token);
                    var response = rawResponse.ToObject <BaseResponse <EconomicInvoiceCreateResponse> >();
                    if (response != null)
                    {
                        result.Code      = response.Code;
                        result.Succeeded = response.Succeeded;
                        result.Data      = response.Data;
                    }
                }
                else
                {
                    result.CannotLogin();
                }
            }
            catch (Exception)
            {
                result.ErrorApi();
            }

            return(result);
        }