예제 #1
0
        public EdiFile ToEdiFile()
        {
            EdiFile  result      = new EdiFile(firmId);
            EdiTable actorsTable = EdiModel.EdiTableFor <Actor>();

            foreach (Actor actor in actors)
            {
                actorsTable.Add(actor.ToEdiRow());
            }

            result.Add(actorsTable);

            foreach (Order order in orders)
            {
                EdiTable orderTable = EdiModel.EdiTableFor <Order>();
                orderTable.Add(order.ToEdiRow());
                result.Add(orderTable);

                EdiTable orderLineTable = EdiModel.EdiTableFor <OrderLine>();

                foreach (OrderLine orderline in order.OrderLines)
                {
                    orderLineTable.Add(orderline.ToEdiRow());
                }

                result.Add(orderLineTable);
            }

            result.RemoveUnusedFields();

            return(result);
        }
예제 #2
0
        public IActionResult Index(IFormFile formFile)
        {
            EdiListViewModel model = new EdiListViewModel();

            var _ediFileData = new EdiModel();

            for (int i = 0; i < Request.Form.Files.Count; i++)
            {
                try
                {
                    IFormFile currentFile = Request.Form.Files[i];

                    using (var stream = new StreamReader(currentFile.OpenReadStream()))
                    {
                        _ediFileData          = EdiParser.ParseData(stream);
                        _ediFileData.FileName = currentFile.FileName;

                        // Just for dumping in UI..
                        _ediFileData.ParsedData = JsonConvert.SerializeObject(_ediFileData);

                        model.EdiList.Add(_ediFileData);
                    };
                }
                catch (Exception ex) { }
            }

            return(View(model));
        }
예제 #3
0
        /// <summary>
        /// Add or update conizi metadata on model instance
        /// </summary>
        /// <param name="model">The model</param>
        /// <param name="metadata">The metadata object</param>
        public static EdiMetadata AddOrUpdateMetadata(this EdiModel model, EdiMetadata metadata)
        {
            if (model.Metadata == null)
            {
                model.Metadata = metadata;
                return(metadata);
            }

            model.Metadata.CreatedAt       = metadata.CreatedAt ?? model.Metadata.CreatedAt;
            model.Metadata.CreatedBy       = metadata.CreatedBy ?? model.Metadata.CreatedBy;
            model.Metadata.Receiver        = metadata.Receiver ?? model.Metadata.Receiver;
            model.Metadata.Sender          = metadata.Sender ?? model.Metadata.Sender;
            model.Metadata.TechnicalSender = metadata.TechnicalSender ?? model.Metadata.TechnicalSender;
            return(metadata);
        }
예제 #4
0
 /// <summary>
 /// Get Metadata from model instance
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public static EdiMetadata GetMetadata(this EdiModel model)
 {
     return(model.Metadata);
 }