Beispiel #1
0
        public static void Main(string[] args)
        {
            string screenName;
            string projectName;

            if (args.Length > 0)
            {
                screenName  = args[0];
                projectName = args[1];
            }
            else
            {
                Console.Write("Screen Name:");
                screenName = Console.ReadLine();
                Console.Write("Project Name:");
                projectName = Console.ReadLine();
            }
            var screenData = new TemplateDataModel(screenName, projectName);

            generateClass(screenData, new ViewModelTemplate(screenData), screenData.ViewModelName + ".cs");
            generateClass(screenData, new ViewTemplate(screenData), screenData.ViewName + ".xaml");
            generateClass(screenData, new ViewCodeBehindTemplate(screenData), screenData.ViewName + ".cs");
            generateClass(screenData, new ViewControllerInterfaceTemplate(screenData), screenData.ViewControllerInterfaceName + ".cs");
            generateClass(screenData, new ViewControllerTemplate(screenData), screenData.ViewControllerName + ".cs");
            generateClass(screenData, new RepositoryInterfaceTemplate(screenData), screenData.RepositoryInterfaceName + ".cs");
            generateClass(screenData, new RepositoryTemplate(screenData), screenData.RepositoryName + ".cs");
            generateClass(screenData, new ServiceInterfaceTemplate(screenData), screenData.ServiceInterfaceName + ".cs");
            generateClass(screenData, new ServiceTemplate(screenData), screenData.ServiceName + ".cs");
        }
Beispiel #2
0
        private async Task SendCheckoutConfirmationMail(BookingDataModel booking)
        {
            TemplateDataModel template = await TemplateProvider.GetTemplateByName("slutafregningskvittering");

            string mailText = TemplateProvider.MergeText(template.Text, booking);

            MailAddress to      = new MailAddress(booking.ContactEMail, booking.ContactName);
            MailMessage message = new MailMessage
            {
                To       = to,
                Subject  = template.Subject,
                HtmlBody = mailText
            };

            await MailDispatchService.DispatchAsync(message);

            byte[] mailBody           = System.Text.Encoding.UTF8.GetBytes(message.HtmlBody);
            var    addDcoumentCommand = new AddDocumentCommand
            {
                Title    = message.Subject,
                MimeType = "text/html",
                Body     = mailBody
            };

            await CommandExecutor.ExecuteAsync(addDcoumentCommand);

            booking.AddDocument(message.Subject, addDcoumentCommand.OutputDocumentId);
        }
Beispiel #3
0
        private async Task SendAdminNotificationMail(BookingDataModel booking)
        {
            TemplateDataModel template = await TemplateProvider.GetTemplateByName("slutafregningsnotifikation");

            string mailText = TemplateProvider.MergeText(template.Text, booking);

            MailAddress to      = new MailAddress(BookingSettings.AdminEmail);
            MailMessage message = new MailMessage
            {
                To       = to,
                Subject  = template.Subject,
                HtmlBody = mailText
            };

            await MailDispatchService.DispatchAsync(message);
        }
Beispiel #4
0
        public async Task ExecuteAsync(SendStatusMailCommand command, IExecutionContext executionContext)
        {
            DateTime startDate = DateTime.Now.AddDays(-14);
            DateTime endDate   = DateTime.Now.AddDays(14);

            string calendarContent = await StatusMailProvider.BuildStatusCalendar(startDate, endDate);

            SearchBookingSummariesQuery query = new SearchBookingSummariesQuery
            {
                Start = new DateTime(DateTime.Now.Year, 1, 1),
                End   = new DateTime(DateTime.Now.Year, 12, 31),
                //BookingState = new BookingDataModel.BookingStateType[] { BookingDataModel.BookingStateType.Requested, BookingDataModel.BookingStateType.Approved }
            };

            var bookings = (await BookingProvider.FindBookingsInInterval(query)).Where(b => !b.IsCancelled).ToList();

            int     bookingCount       = bookings.Count;
            decimal bookingTotalIncome = bookings.Sum(b => b.RentalPrice ?? 0.0M);

            TemplateDataModel template = await TemplateProvider.GetTemplateByName("statusmail");

            Dictionary <string, object> mergeData = new Dictionary <string, object>
            {
                ["date"]               = DateTime.Now.Date,
                ["bookingCount"]       = bookingCount,
                ["bookingTotalIncome"] = bookingTotalIncome,
                ["calendar"]           = calendarContent
            };

            string mailContent = TemplateProvider.MergeText(template.Text, mergeData);

            MailAddress to      = new MailAddress(Settings.MailReceiver);
            MailMessage message = new MailMessage
            {
                To       = to,
                Subject  = "Bøgevang statusopdatering",
                HtmlBody = mailContent
            };

            await MailDispatchService.DispatchAsync(message);
        }
        public async Task <BookingMail> CreateBookingMail(int bookingId, string templateName)
        {
            BookingSummary booking = await BookingProvider.GetBookingSummaryById(bookingId);

            if (booking == null)
            {
                return(null);
            }

            TemplateDataModel template = await TemplateProvider.GetTemplateByName(templateName);

            string message = TemplateProvider.MergeText(template.Text, booking);

            return(new BookingMail
            {
                Description = template.Description,
                To = new MailAddress(booking.ContactEMail, booking.ContactName),
                Subject = template.Subject,
                Message = message
            });
        }
 public ViewCodeBehindTemplate(TemplateDataModel dataModel)
 {
     _DataModel = dataModel;
 }
Beispiel #7
0
 public TemplateDataModel GetDataModel(Func <string> screenName)
 {
     _Model = new TemplateDataModel(screenName(), _ProjectReader.GetProjectName());
     return(_Model);
 }
Beispiel #8
0
 public TemplateDataModel GetDataModel(string screenName, string projectName)
 {
     _Model = new TemplateDataModel(screenName, projectName);
     return(_Model);
 }
Beispiel #9
0
        protected TemplateDataModel InitData(Kooboo.Lib.NETMultiplePart.FormResult formResult, ApiCall call)
        {
            TemplateDataModel data = new TemplateDataModel();

            if (formResult.FormData.ContainsKey("sitename"))
            {
                data.Name = formResult.FormData["sitename"];
            }

            if (formResult.FormData.ContainsKey("link"))
            {
                data.Link = formResult.FormData["link"];
            }
            if (formResult.FormData.ContainsKey("description"))
            {
                data.Description = formResult.FormData["description"];
            }
            if (formResult.FormData.ContainsKey("tags"))
            {
                data.Tags = formResult.FormData["tags"];
            }

            if (formResult.FormData.ContainsKey("price"))
            {
                data.Price = decimal.Parse(formResult.FormData["price"]);
            }
            if (formResult.FormData.ContainsKey("currency"))
            {
                data.Price = decimal.Parse(formResult.FormData["currency"]);
            }

            data.UserId = call.Context.User.Id;

            if (formResult.FormData.ContainsKey("IsPrivate"))
            {
                string strisprivae = formResult.FormData["IsPrivate"];
                bool   isprivate   = false;
                bool.TryParse(strisprivae, out isprivate);

                if (isprivate)
                {
                    data.OrganizationId = call.Context.User.CurrentOrgId;
                }
            }

            foreach (var item in formResult.Files)
            {
                TemplateUserImages image = new TemplateUserImages();
                image.FileName = item.FileName;
                image.Base64   = Convert.ToBase64String(item.Bytes);
                data.Images.Add(image);
            }

            if (data.Images.Count() > 0)
            {
                if (formResult.FormData.ContainsKey("defaultimg"))
                {
                    string strindex = formResult.FormData["defaultimg"];
                    int    index    = 0;
                    int.TryParse(strindex, out index);

                    if (data.Images.Count() > index)
                    {
                        data.Images[index].IsDefault = true;
                    }
                }
            }

            return(data);
        }
Beispiel #10
0
        static void generateClass(TemplateDataModel screenData, ITemplate template, string fileName)
        {
            string templateOutput = template.TransformText();

            System.IO.File.WriteAllText(fileName, templateOutput);
        }
 public RepositoryTemplate(TemplateDataModel dataModel)
 {
     _DataModel = dataModel;
 }
 public ServiceTemplate(TemplateDataModel dataModel)
 {
     _DataModel = dataModel;
 }
 public ProjectBaseContentPageTemplate(TemplateDataModel dataModel)
 {
     _DataModel = dataModel;
 }
Beispiel #14
0
 public RepositoryInterfaceTemplate(TemplateDataModel dataModel)
 {
     _DataModel = dataModel;
 }
 public ViewModelTemplate(TemplateDataModel dataModel)
 {
     _DataModel = dataModel;
 }
 public ViewControllerInterfaceTemplate(TemplateDataModel dataModel)
 {
     _DataModel = dataModel;
 }
Beispiel #17
0
 public ViewControllerTemplate(TemplateDataModel dataModel)
 {
     _DataModel = dataModel;
 }