コード例 #1
0
        //
        // Insert/Delete Methods
        public DataViewModel Add(DataViewModel model)
        {
            Form form = model.Form;
            /*View view = model.View;
            CultureInfo culture = CultureInfo.CreateSpecificCulture("da-DK");*/
            Dictionary<string, string> parameters = GetProperties(model);
            string sql = "insert into " + form.ClassName + "(";
            foreach (string column in parameters.Keys)
            {
                sql = sql + column + ",";
            }
            sql = sql.TrimEnd(new char[] { ',' });
            sql = sql + ") values(";
            foreach (string value in parameters.Values)
            {
                sql = sql + value + ",";
            }
            sql = sql.TrimEnd(new char[] { ',' });
            sql = sql + ")";
            using (SqlConnection con = new SqlConnection(form.ResourceName))
            {
                SqlCommand command = new SqlCommand(sql, con);
                con.Open();
                int j = command.ExecuteNonQuery();
                if (j == 1)
                {
                    sql = "SELECT id from "+form.ClassName+" WHERE uniqueid='"+model.UniqueId+"'";
                    SqlCommand commandRead = new SqlCommand(sql, con);
                    model.ItemId = (int)commandRead.ExecuteScalar();

                }
            }
            return model;
        }
コード例 #2
0
        private void CalibrationCmd()
        {
            CalibartionCommandsListbySubGroup.Add("Calibration List", new ObservableCollection <object>());
            CalibartionCommandsListbySubGroup.Add("Calibration Result List", new ObservableCollection <object>());

            var names = new[]
            {
                "Current Offset", "PI Current Loop", "Hall Mapping", "Encoder1 Direction", "PI Speed Loop", "PI Position Loop"
            };

            for (int i = 0; i < names.Length; i++) // Calibration Button
            {
                var data = new CalibrationButtonModel
                {
                    CommandName  = names[i],
                    CommandId    = "6",
                    CommandSubId = (i * 2 + 1).ToString(CultureInfo.InvariantCulture),
                    CommandValue = "",
                    IsFloat      = false,
                };
                CalibartionCommandsList.Add(new Tuple <int, int>(6, Convert.ToInt16(i * 2 + 1)), data);
                CalibartionCommandsListbySubGroup["Calibration List"].Add(data);

                var TextBoxResult = new DataViewModel
                {
                    CommandName  = names[i],
                    CommandId    = "6",
                    CommandSubId = (i * 2 + 2).ToString(CultureInfo.InvariantCulture),
                    CommandValue = "",
                    IsFloat      = false,
                };
                DataViewCommandsList.Add(new Tuple <int, int>(6, Convert.ToInt16(i * 2 + 2)), TextBoxResult);
                CalibartionCommandsListbySubGroup["Calibration Result List"].Add(TextBoxResult);
            }
        }
コード例 #3
0
        public override async Task <IActionResult> Index()
        {
            var profile = await _dbContext.Profiles
                          .Include(p => p.Account)
                          .Include(p => p.Tariff)
                          .AsNoTracking()
                          .FirstOrDefaultAsync(p => p.Account.UserName.Equals(User.Identity.Name));

            var filter = new Func <Payment, bool>((o)
                                                  => o.DestinationProfile.Id.Equals(profile.Id));

            return(await Task.Run(() =>
            {
                var dvm = new DataViewModel <Payment>(_scopeFactory,
                                                      settings: Settings,
                                                      urlPath: HttpContext.Request.Path,
                                                      filter: filter,
                                                      includeFields: new string[]
                {
                    nameof(Payment.SourceProfile),
                    nameof(Payment.DestinationProfile),
                    nameof(Payment.Role),
                },
                                                      excludeFields: new string[]
                {
                    nameof(Payment.DestinationProfile),
                    nameof(Payment.DestinationProfileId),
                    nameof(Payment.SourceProfileId),
                    nameof(Payment.RoleId)
                }
                                                      );

                return View("CustomIndex", model: (dvm, profile));
            }));
        }
コード例 #4
0
        public async Task <IActionResult> AcceptReservation(int id)
        {
            var dataModel = new DataViewModel();

            _reservationRepository.AcceptReservation(id);
            var playgroundId        = _userManager.GetUserId(User);
            var acceptedReservation = _reservationRepository.GetAll(playgroundId).FirstOrDefault(r => r.Id == id);

            // notifing the accepted request user whether their request to reserve is accepted or not
            await NotifyUser(playgroundId, acceptedReservation, $"Your reservation request has been approved for {acceptedReservation.Date} day from {acceptedReservation.StartTime} to {acceptedReservation.EndTime}");

            //check for another requests and delete the requests with the same time of another reservation
            var remainingRequests = _reservationRepository.GetRequests(playgroundId);

            foreach (var r in remainingRequests)
            {
                if (_reservationRepository.IsValid(r) == false)
                {
                    // notifing the other users that thier requests have been rejected
                    await NotifyUser(playgroundId, r, $"Sorry, your reservation request has been rejected  for {r.Date} day from {r.StartTime} to {r.EndTime}");

                    _reservationRepository.Delete(r.Id);
                }
            }
            dataModel.Requests = _reservationRepository.GetRequests(playgroundId);
            dataModel.IsAdmin  = true;
            return(PartialView("_Request", dataModel));
        }
コード例 #5
0
        public override async Task <IActionResult> Index()
        {
            return(await Task.Run(() =>
            {
                var dvm = new DataViewModel <Payment>(_scopeFactory,
                                                      urlPath: HttpContext.Request.Path,
                                                      settings: Settings,
                                                      includeFields: new string[]
                {
                    nameof(Payment.SourceProfile),
                    nameof(Payment.DestinationProfile),
                    nameof(Payment.Role),
                    "SourceProfile.Account",
                    "DestinationProfile.Account"
                },
                                                      excludeFields: new string[]
                {
                    nameof(Payment.SourceProfileId),
                    nameof(Payment.DestinationProfileId),
                    nameof(Payment.RoleId)
                }
                                                      );

                return View("CustomIndex", model: dvm);
            }));
        }
コード例 #6
0
        private void InitializeViews()
        {
            _browserView   = new BrowserView();
            _dataViewModel = new DataViewModel();
            _dataViewModel.ReportSelectionChanged += OnReportSelectionChanged;
            _dataView = new DataView
            {
                DataContext = _dataViewModel
            };

            _reportViewModel = new ReportViewModel(_browserView, _dataViewModel, _dataView, GetSelectedProject());
            _reportView      = new ReportView
            {
                DataContext = _reportViewModel
            };

            var reports = _reportsController.GetReports(true).Result;

            _reportsNavigationViewModel = new ReportsNavigationViewModel(reports, GetSettings(), _pathInfo, GetSelectedProject());
            _reportsNavigationViewModel.ReportSelectionChanged += OnReportSelectionChanged;
            _reportsNavigationViewModel.ReportViewModel         = _reportViewModel;
            _reportsNavigationViewModel.SelectedProject         = _reportsController?.Project;
            _reportsNavigationViewModel.ProjectLocalFolder      = _reportsController?.ProjectLocalFolder;
            _reportsNavigationView.DataContext = _reportsNavigationViewModel;
        }
コード例 #7
0
ファイル: Powers.cs プロジェクト: stephengunter/Receiver
        public DataViewModel Calculate(int begin, int end)
        {
            var ticks = futuresService.GetTicks(begin, end);

            double buyQty  = 0;
            double sellQty = 0;

            int itemBuyQty  = ticks.Where(t => t.type == 1).Sum(t => t.qty);
            int itemSellQty = ticks.Where(t => t.type == -1).Sum(t => t.qty);

            buyQty  += itemBuyQty;
            sellQty += itemSellQty;


            var result = new string[] { Convert.ToInt32(Math.Ceiling(buyQty)).ToString(), Convert.ToInt32(Math.Ceiling(sellQty)).ToString() };

            var data = new DataViewModel
            {
                indicator = nameof(Powers),
                text      = String.Join(",", result),
                val       = Math.Ceiling(buyQty - sellQty).ToString()
            };

            return(data);
        }
コード例 #8
0
        public JsonResult Search(Search data)
        {
            List <decimal> values = bldb.Readings.Where(r => ((r.BuildingId != 0 && r.BuildingId == data.BuildingId) ||
                                                              (r.ObjectId != 0 && r.ObjectId == data.ObjectId) ||
                                                              (r.DataFieldId != 0 && r.DataFieldId == data.DatafieldId)) &&
                                                        (r.Timestamp >= data.StartDate && r.Timestamp <= data.EndDate)
                                                        ).Select(r => r.Value).ToList();

            List <string> timestamps = bldb.Readings.Where(r => ((r.BuildingId != 0 && r.BuildingId == data.BuildingId) ||
                                                                 (r.ObjectId != 0 && r.ObjectId == data.ObjectId) ||
                                                                 (r.DataFieldId != 0 && r.DataFieldId == data.DatafieldId)) &&
                                                           (r.Timestamp >= data.StartDate && r.Timestamp <= data.EndDate)
                                                           ).Select(r => r.Timestamp.ToString()).ToList();

            for (int i = 0; i < timestamps.Count; i++)
            {
                timestamps[i] = DateTime.Parse(timestamps[i], null,
                                               DateTimeStyles.RoundtripKind).ToString();
            }

            DataViewModel return_data = new DataViewModel
            {
                BuildingList  = null,
                ObjectList    = null,
                DataFieldList = null,
                ValueList     = values,
                TimeStampList = timestamps
            };

            return(Json(return_data, JsonRequestBehavior.AllowGet));
        }
コード例 #9
0
        public ScorePage()
        {
            this.InitializeComponent();
            secondMajorItem = (PivotItem)ScoreSectionsPivot.Items[1];
            ScoreSectionsPivot.Items.RemoveAt(1);
            localDataService  = Application.Current.GetService <IDataService>(x => x.DataSource == DataSource.LocalCache);
            remoteDataService = Application.Current.GetService <IDataService>(x => x.DataSource == DataSource.Online);
            cacheService      = Application.Current.GetService <ILocalCacheService>();

            MajorScoreViewModel = new DataViewModel <ScoreSet, ScoreSetViewModel>(
                new ScoreSetViewModel(),
                x => new ScoreSetViewModel(x),
                () => localDataService.GetScoreAsync(false),
                () => remoteDataService.GetScoreAsync(false),
                x => cacheService.SetScoreAsync(x)
                );

            SecondMajorScoreViewModel = new DataViewModel <ScoreSet, ScoreSetViewModel>(
                new ScoreSetViewModel(),
                x => new ScoreSetViewModel(x),
                () => localDataService.GetScoreAsync(true),
                () => remoteDataService.GetScoreAsync(true),
                x => cacheService.SetScoreAsync(x)
                );

            StudentInfoViewModel = new DataViewModel <StudentInfo, StudentInfoViewModel>(
                new StudentInfoViewModel(),
                x => new StudentInfoViewModel(x),
                () => localDataService.GetStudentInfoAsync(),
                () => remoteDataService.GetStudentInfoAsync(),
                x => Task.CompletedTask,
                _ => false
                );
        }
        public ActionResult Register()
        {
            CASDatabaseEntities   db   = new CASDatabaseEntities();
            List <SelectListItem> list = new List <SelectListItem>();
            DataViewModel         dt   = new DataViewModel();

            var getData = db.RoleDetails.ToList();

            foreach (var item in getData)
            {
                if (item.RoleID == 1)
                {
                    continue;
                }
                else
                {
                    list.Add(new SelectListItem
                    {
                        Text  = item.RoleName,
                        Value = item.RoleID.ToString()
                    });
                }
            }
            dt.ListRole = list;
            return(View(dt));
        }
コード例 #11
0
        public ActionResult Index(string id)
        {
            string       accountName;
            Guid         favoriteId;
            UserFavorite userFavorite;

            try {
                accountName  = Helpers.DecodeCookie(Request.Cookies["user"]["user_accountname"]);
                favoriteId   = Guid.Parse(id);
                userFavorite = _checkoutService.GetFavorite(favoriteId, accountName);
            } catch (Exception) {
                return(View("Error"));
            }
            DataViewModel dataViewModel = new DataViewModel {
                FavoriteId      = favoriteId,
                IsPackage       = userFavorite.IsPackage,
                Package         = null,
                UserDefinedList = null,
                RoomTypeList    = _checkoutService.GetRoomTypeList(),
                SquareFeetList  = _checkoutService.GetSquareFeetList()
            };

            if (userFavorite.IsPackage)
            {
                dataViewModel.Package = _checkoutService.GetPackage(userFavorite);
            }
            else
            {
                dataViewModel.UserDefinedList = _checkoutService.GetUserDefinedList(userFavorite);
            }
            return(View(dataViewModel));
        }
コード例 #12
0
        private void Getdeviceinformation()
        {
            var dataviewmodel = new DataViewModel();

            aircasedevice = dataviewmodel.GetDevice();
            Console.WriteLine("Got the Device " + aircasedevice.Name.ToString());
        }
コード例 #13
0
        public IActionResult Index(int id)
        {
            DataViewModel Model = new DataViewModel();

            Model.Goals = _db.Goals
                          .Where(g => g.MatchId == id)
                          .OrderBy(g => g.Minute)
                          .Include(g => g.Player)
                          .ToList();

            Model.Cards = _db.Cards
                          .Where(c => c.MatchId == id)
                          .OrderBy(c => c.Minute)
                          .Include(c => c.Player)
                          .ToList();

            Model.Match = _db.Matches
                          .Include(m => m.AwayTeam)
                          .Include(m => m.HomeTeam)
                          .Include(m => m.Referee)
                          .Include(m => m.Season)
                          .Single(m => m.Id == id);

            return(View(Model));
        }
コード例 #14
0
        public async override Task <IActionResult> Index()
        {
            return(await Task.Run(() =>
            {
                var dvm = new DataViewModel <Device>(_scopeFactory,
                                                     settings: Settings,
                                                     urlPath: HttpContext.Request.Path,
                                                     includeFields: new string[]
                {
                    nameof(Device.Type),
                    nameof(Device.State)
                },
                                                     excludeFields: new string[]
                {
                    nameof(Device.CustomDeviceField1),
                    nameof(Device.CustomDeviceField2),
                    nameof(Device.CustomDeviceField3),
                    nameof(Device.DateOfCreation),
                    nameof(Device.DateOfUpdate),
                }
                                                     );

                return View("CustomIndex", model: dvm);
            }));
        }
コード例 #15
0
        private void InitializeViews()
        {
            _browserView   = new BrowserView();
            _dataViewModel = new DataViewModel();
            _dataViewModel.ReportSelectionChanged += OnReportSelectionChanged;
            _dataView = new DataView
            {
                DataContext = _dataViewModel
            };

            _reportViewModel = new ReportViewModel(_browserView, _dataViewModel, _dataView);
            _reportView      = new ReportView
            {
                DataContext = _reportViewModel
            };

            var reports = ReportsController.GetReports(false).Result;

            _reportsNavigationViewModel = new ReportsNavigationViewModel(reports, GetSettings(), _pathInfo);
            _reportsNavigationViewModel.ReportSelectionChanged += OnReportSelectionChanged;
            _reportsNavigationViewModel.ReportViewModel         = _reportViewModel;
            _reportsNavigationViewModel.ProjectLocalFolder      = ReportsController.GetProjectLocalFolder();

            _reportsNavigationView = new ReportsNavigationView(_reportsNavigationViewModel);
            _reportsNavigationViewModel.ReportsNavigationView = _reportsNavigationView;

            _reportViewControl.UpdateViewModel(_reportView);
            _reportsNavigationViewControl.UpdateViewModel(_reportsNavigationView);
        }
コード例 #16
0
        public async Task <IActionResult> Index(string id)
        {
            var dataModel = new DataViewModel();
            var user      = await _userManager.GetUserAsync(User);

            dataModel.ControllerName = "Playground";
            dataModel.IsAdmin        = false;

            if (User.IsInRole("Playground") && (id == null || user.Id == id))
            {
                dataModel.CurrentUser = user;
                dataModel.IsAdmin     = true;
            }
            else if (_signInManager.IsSignedIn(User) && id != null)
            {
                dataModel.CurrentUser = user;
                dataModel.Entity      = await _userManager.FindByIdAsync(id);
            }
            else if (id != null)
            {
                dataModel.Entity = await _userManager.FindByIdAsync(id);
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }

            return(View(dataModel));
        }
コード例 #17
0
        private void GenerateDriverCommands()
        {
            DataCommandsListbySubGroup.Add("DriverFullScale", new ObservableCollection <object>());

            var names = new[]
            {
                "Current", "V-Bus", "BEMF"
            };


            for (int i = 0; i < names.Length; i++)
            {
                var data = new DataViewModel
                {
                    CommandName  = names[i],
                    CommandId    = "130",
                    CommandSubId = i.ToString(CultureInfo.InvariantCulture),
                    CommandValue = "",
                    IsFloat      = true,
                };

                DataViewCommandsList.Add(new Tuple <int, int>(130, i), data);
                DataCommandsListbySubGroup["DriverFullScale"].Add(data);
            }
        }
コード例 #18
0
        public ActionResult Problem(DataViewModel data)
        {
            cubeService.GetSolution(data);
            ViewBag.OutPut = data.Output;

            return(View(data));
        }
コード例 #19
0
        public IActionResult SubmitLocation(DataViewModel model)
        {
            var token   = HttpContext.Session.GetString("bearerToken");
            var request = new RestRequest("users/", Method.GET);

            return(Index());
        }
コード例 #20
0
        private void InitializeViews()
        {
            var fileBasedProject = GetSelectedProject();

            if (fileBasedProject == null)
            {
                return;
            }
            else
            {
                _reports = new ProjectReportsOperations(fileBasedProject).GetProjectReports();
            }

            _dataViewModel = new DataViewModel(_reports, this)
            {
                ProjectLocalFolder = fileBasedProject.GetProjectInfo().LocalProjectFolder
            };

            _dataView = new DataView
            {
                DataContext = _dataViewModel
            };


            _reportViewControl?.UpdateViewModel(_dataView);
        }
コード例 #21
0
        public DataViewModel Calculate(int begin, int end)
        {
            var    stocks  = stockService.GetStocks();
            double buyQty  = 0;
            double sellQty = 0;

            foreach (var item in stocks)
            {
                var ticks = stockService.GetTicks(item.code, begin, end);

                int itemBuyQty  = ticks.Where(t => t.type == 1).Sum(t => t.qty);
                int itemSellQty = ticks.Where(t => t.type == -1).Sum(t => t.qty);

                buyQty  += itemBuyQty * item.ratio;
                sellQty += itemSellQty * item.ratio;
            }


            var result = new string[] { Convert.ToInt32(Math.Ceiling(buyQty)).ToString(), Convert.ToInt32(Math.Ceiling(sellQty)).ToString() };

            var data = new DataViewModel
            {
                indicator = nameof(BlueChips),
                text      = String.Join(",", result),
                val       = Math.Ceiling(buyQty - sellQty).ToString()
            };

            return(data);
        }
コード例 #22
0
        private void UpperMainPannelList()
        {
            DataCommandsListbySubGroup.Add("UpperMainPan List", new ObservableCollection <object>());

            var data = new DataViewModel
            {
                CommandName  = "CH1",
                CommandId    = "60",
                CommandSubId = "1",
                CommandValue = "",
                IsFloat      = false,
            };

            DataViewCommandsList.Add(new Tuple <int, int>(60, 1), data);
            DataCommandsListbySubGroup["UpperMainPan List"].Add(data);

            data = new DataViewModel
            {
                CommandName  = "CH2",
                CommandId    = "60",
                CommandSubId = "2",
                CommandValue = "",
                IsFloat      = false,
            };
            DataViewCommandsList.Add(new Tuple <int, int>(60, 2), data);
            DataCommandsListbySubGroup["UpperMainPan List"].Add(data);
        }
コード例 #23
0
        /// <summary>
        /// The index method restores session variables if they exist, gets data for the view model and returns the index view.
        /// </summary>
        /// <returns>
        /// The <see cref="ActionResult"/>.
        /// </returns>
        public ActionResult Index()
        {
            string major = this.HttpContext.Session["Major"] != null
                               ? (string)this.HttpContext.Session["Major"]
                               : string.Empty;

            PlacementTests  placementTest  = new PlacementTests();
            PlacementScores placementScore = new PlacementScores();

            if (this.HttpContext.Session["PlacementTest"] != null)
            {
                placementTest = (PlacementTests)this.HttpContext.Session["PlacementTest"];
            }

            if (this.HttpContext.Session["PlacementScore"] != null)
            {
                placementScore = (PlacementScores)this.HttpContext.Session["PlacementScore"];
            }

            List <SelectListItem> placementScoreList = placementTest != 0
                                                          ? this.GetScores(placementTest)
                                                          : new List <SelectListItem>();

            DataViewModel form = new DataViewModel
            {
                MajorList              = this.GetMajors(),
                SelectedMajor          = major,
                SelectedPlacementTest  = placementTest.ToString(),
                PlacementScoreList     = placementScoreList,
                SelectedPlacementScore = ((int)placementScore).ToString()
            };

            return(this.View(form));
        }
コード例 #24
0
        public ActionResult Edit(int?id)
        {
            if (Request.Cookies["MagazineId"].Value == null)
            {
                SetMessage("Lo sentimos, ha ocurrido un error. Inténtelo de nuevo.", BootstrapAlertTypes.Danger); return(RedirectToAction("Index", "Magazines"));
            }
            int magId = Int32.Parse(Request.Cookies["MagazineId"].Value);

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var data  = db.DatasList.Find(id);
            var model = new DataViewModel()
            {
                DataId          = data.DataId,
                DataParentId    = data.DataParentId,
                Description     = data.Description,
                ImageString     = data.Image,
                ImageSignString = data.imageSign,
                Order           = data.Order,
                Title           = data.Title,
                Url             = data.Url
            };

            if (data == null)
            {
                return(HttpNotFound());
            }

            ViewBag.DataParentId = new SelectList(db.Datas().Where(x => x.MagazineId == magId).Where(x => !x.IsDeleted).Where(x => x.DataId != id).Where(x => x.DataParentId == null).ToList(), "DataId", "Title", data.DataParentId);

            return(View(model));
        }
コード例 #25
0
        public ActionResult Index(DataViewModel data)
        {
            PlacementTests placementTest;

            Enum.TryParse(data.SelectedPlacementTest, out placementTest);
            if (!this.ModelState.IsValid)
            {
                data.MajorList = this.GetMajors();

                data.PlacementScoreList = data.SelectedPlacementTest != null
                                              ? this.GetScores(placementTest)
                                              : new List <SelectListItem>();

                return(this.View(data));
            }

            this.HttpContext.Session["Major"]         = data.SelectedMajor;
            this.HttpContext.Session["PlacementTest"] = placementTest;
            PlacementScores placementScore;

            Enum.TryParse(data.SelectedPlacementScore, out placementScore);
            this.HttpContext.Session["PlacementScore"] = placementScore;

            return(this.View(data));
        }
コード例 #26
0
        public JsonResult DropdownEntries()
        {
            CultureInfo     provider  = CultureInfo.InvariantCulture;
            List <Building> buildings = bldb.Buildings.ToList();
            List <BuildingDataChartApp.Models.Object> objects = bldb.Objects.ToList();
            List <DataField> datafields = bldb.DataFields.ToList();
            List <decimal>   values     = bldb.Readings.Select(r => r.Value).ToList();
            List <string>    timestamps = bldb.Readings.Select(r => r.Timestamp.ToString()).ToList();

            for (int i = 0; i < timestamps.Count; i++)
            {
                timestamps[i] = DateTime.Parse(timestamps[i], null,
                                               DateTimeStyles.RoundtripKind).ToString();
            }

            DataViewModel data = new DataViewModel
            {
                BuildingList  = buildings,
                ObjectList    = objects,
                DataFieldList = datafields,
                ValueList     = values,
                TimeStampList = timestamps
            };

            return(Json(data, JsonRequestBehavior.AllowGet));
        }
コード例 #27
0
        public void OnEventAcquired(object sender, ParserEventArgs args)
        {
            try
            {
                //Update property window anyway
                PropertyGridViewModel.Clear();
                DataViewModel?.Clear();

                if (args == null)
                {
                    throw new NullReferenceException("Invalid arguments passed");
                }

                PropertyGridViewModel.AddData(args.TreeNode?.Properties);

                var argsType = args.ArgsType;

                if ((argsType & MessageType.ProcessAll) != 0)
                {
                    DataViewModel = MarkupManager.Resolve(args.TreeNode?.Markup) ?? new DataGridViewModel();
                    DataViewModel.ProcessNodeData(args.TreeNode);
                }

                DataViewModel?.Refresh();
                PropertyGridViewModel.Refresh();
            }
            catch (Exception ex)
            {
                MessageBoxInstance.Raise(ex.Message);
            }
        }
コード例 #28
0
        public IActionResult GetEmployees()
        {
            DataViewModel[] dvm = new DataViewModel[]
            {
                new DataViewModel {
                    EmployeeiD = 1, FullName = "Ahmad", Department = "IT"
                },
                new DataViewModel {
                    EmployeeiD = 2, FullName = "Ali", Department = "IT"
                },
                new DataViewModel {
                    EmployeeiD = 3, FullName = "Jaber", Department = "Sales"
                },
                new DataViewModel {
                    EmployeeiD = 4, FullName = "Mahdi", Department = "Support"
                },
                new DataViewModel {
                    EmployeeiD = 5, FullName = "Sadeq", Department = "Operation"
                }
            };



            return(Json(new { EmployeeProfile = dvm }));
        }
コード例 #29
0
        public IActionResult AddReservation(PlaygroundReservation reservation)
        {
            bool          res       = true;
            DataViewModel dataModel = new DataViewModel();

            if (User.IsInRole("Playground"))
            {
                reservation.Status       = "Accepted";
                reservation.PlaygroundId = _userManager.GetUserId(HttpContext.User);
                dataModel.IsAdmin        = true;
            }
            else
            {
                reservation.Status = "Waiting";
                reservation.UserId = _userManager.GetUserId(HttpContext.User);
                reservation.Name   = _reservationRepository.GetUsername(reservation.UserId);
            }
            if (ModelState.IsValid)
            {
                res = _reservationRepository.Add(reservation);
            }
            if (res)
            {
                dataModel.Reservations = _reservationRepository.GetReservationsByDay(reservation.PlaygroundId, DateTime.Now.Day, DateTime.Now.Month, DateTime.Now.Year);
                return(PartialView("_Reservation", dataModel));
            }
            else
            {
                return(BadRequest(new BadRequestObjectResult("There is another reservation at the same time, Please change your reservation time.")));
            }
        }
コード例 #30
0
        public List <DataViewModel> DataLancamento()
        {
            List <Jogos>         lista          = Listar();
            List <DataViewModel> listaViewModel = new List <DataViewModel>();

            foreach (var item in lista)
            {
                var jogoVm = new DataViewModel();
                jogoVm.NomeJogo       = item.NomeJogo;
                jogoVm.DataLancamento = item.DataLancamento;
                TimeSpan diasRestantes    = item.DataLancamento - DateTime.Now;
                var      intDiasRestantes = Convert.ToInt32(diasRestantes.TotalDays);
                if (intDiasRestantes < 0)
                {
                    jogoVm.DiasFaltantes = 0;
                }
                else
                {
                    jogoVm.DiasFaltantes = intDiasRestantes;
                }

                listaViewModel.Add(jogoVm);
            }
            return(listaViewModel);
        }
コード例 #31
0
        private void GenerateMotionTabCommands()
        {
            DataCommandsListbySubGroup.Add("CurrentLimit List", new ObservableCollection <object>());

            var names = new[]
            {
                "Continuous Current Limit [A]", "Peak Current Limit [A]", "Peak Time [sec]", "PWM limit [%]"
            };


            for (int i = 0; i < names.Length; i++)
            {
                var data = new DataViewModel
                {
                    CommandName  = names[i],
                    CommandId    = "52",
                    CommandSubId = (i + 1).ToString(CultureInfo.InvariantCulture),
                    CommandValue = "",
                    IsFloat      = true,
                };

                DataViewCommandsList.Add(new Tuple <int, int>(52, i + 1), data);
                DataCommandsListbySubGroup["CurrentLimit List"].Add(data);
            }
        }
コード例 #32
0
        public ActionResult Create(DataViewModel postModel, FormCollection formValues)
        {
            DataCreateModel dataCreateModel = CreateModel(postModel, formValues,Operation.Create);
            DataViewModel model = dataCreateModel.Model;
            foreach(Field field in model.Form.Fields.Where(m => m.FieldTypeId == 11))
            {
                field.Data = Request.UserHostAddress;
            }

            if (ModelState.IsValid)
            {
                RepositoryMapguide repositoryMapGuide = new RepositoryMapguide();
                model = repositoryMapGuide.Add(model);
                dataCreateModel.Model = model;
                repositoryMapGuide.SendEmails(dataCreateModel);
                Models.View endView = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 7);
                if (endView == null)
                {
                    Models.View listUser = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 6);
                    if (listUser == null)
                    {
                        Models.View listAll = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 5);
                        if (listAll == null)
                        {
                            return View(model.View.Name, model);
                        }
                        else
                        {
                            return RedirectToAction("Index", new { id = listAll.ViewId, formId = model.Form.FormId });
                        }
                    }
                    else
                    {
                        return RedirectToAction("Index", new { id = listUser.ViewId, formId = model.Form.FormId });
                    }

                }
                else
                {
                    ViewBag.Id = model.View.ViewId;
                    model.View = endView;
                    return View(endView.Name, model);
                }
            }
            else
                return View(model.View.Name, model);
        }
コード例 #33
0
 public void Delete(DataViewModel model)
 {
     using (SqlConnection connection = new SqlConnection(model.Form.ResourceName))
     {
         connection.Open();
         SqlCommand command = connection.CreateCommand();
         command.CommandText = "DELETE FROM " + model.Form.ClassName + " WHERE Id=" + model.ItemId.ToString();
         int i = command.ExecuteNonQuery();
         if (i == 0)
             throw new Exception("Data er ikke slettet");
     }
     string[] files = System.IO.Directory.GetFiles(model.Form.UploadPhysicalPath, "*" + model.UniqueId + "*.*");
     foreach (string file in files)
     {
         System.IO.File.Delete(file);
     }
 }
コード例 #34
0
 public ActionResult DoValidate(DataViewModel model)
 {
     if(ModelState.IsValid)
         return View("Info", model);
     return View("Play", model);
 }
コード例 #35
0
        public ActionResult Delete(DataViewModel postModel)
        {
            RepositoryMapguide mapguide = new RepositoryMapguide();
            RepositoryViews repository = new RepositoryViews();
            Models.View view = repository.Get(postModel.View.ViewId);
            DataViewModel model = new DataViewModel
            {
                View = view,
                Form = view.Group.Forms.Single(m => m.FormId == postModel.Form.FormId),
                ItemId = postModel.ItemId,
                UniqueId = postModel.UniqueId
            };
            model = mapguide.Get(model);
            mapguide.Delete(model);
            List<DataEmailModel> emails = new List<DataEmailModel>();
            if (!String.IsNullOrEmpty(model.Form.Email)&&!String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnDelete))
            {
                emails.Add(new DataEmailModel { Email = model.Form.Email, View = model.Form.ViewEmailToReceiverOnDelete });
            }
            foreach (Field field in model.Form.Fields)
            {
                if (field.FieldTypeId == 7)
                {
                    if (!string.IsNullOrEmpty(field.Data))
                    {
                        if (email.IsMatch(field.Data))
                        {
                            string emailView = field.Form.ViewEmailToSenderOnDelete;
                            Field operationField = field.Form.Fields.FirstOrDefault(m => m.FieldTypeId == 13);
                            if (!String.IsNullOrEmpty(emailView) && operationField != null)
                            {
                                if (!String.IsNullOrEmpty(operationField.Data))
                                {
                                    if (operationField.Data == "1" || operationField.Data == "True")
                                    {
                                        emails.Add(new DataEmailModel { Email = field.Data, View = emailView });
                                    }
                                }

                            }
                        }
                    }
                }
                Selection selection = field.Selections.SingleOrDefault(m => m.Name == field.Data);
                if (selection != null && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnDelete))
                {

                    if (!String.IsNullOrEmpty(selection.Email))
                    {
                            emails.Add(new DataEmailModel { Email = selection.Email, View = model.Form.ViewEmailToReceiverOnDelete });
                    }
                }
            }
            DataCreateModel dcm = new DataCreateModel()
            {
                Model = model,
                Emails = emails
            };
            mapguide.SendEmails(dcm);
            Models.View endView = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 7);
            if (endView == null)
            {
                Models.View listUser = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 6);
                if (listUser == null)
                {
                    Models.View listAll = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 5);
                    if (listAll == null)
                    {
                        return View(model.View.Name, model);
                    }
                    else
                    {
                        return RedirectToAction("Index", new { id = listAll.ViewId, formId = model.Form.FormId });
                    }
                }
                else
                {
                    return RedirectToAction("Index", new { id = listUser.ViewId, formId = model.Form.FormId });
                }

            }
            else
            {
                return View(endView.Name, model);
            }
        }
コード例 #36
0
        public DataViewModel Get(DataViewModel m)
        {
            RepositoryCompanies repositoryCompanies = new RepositoryCompanies();
            NumberFormatInfo nfi = new NumberFormatInfo();
            nfi.NumberDecimalSeparator = ".";
            nfi.NumberGroupSeparator = ",";
            Form form = m.Form;
            View view = m.View;
            List<Field> columns = new List<Field>();
            Dictionary<string, UserInfo> users = new Dictionary<string, UserInfo>();
            string select = "";
            bool fId = false;
            bool fUserId = false;
            bool fUniqueId = false;
            bool fDato = false;
            foreach (Field field in form.Fields.Where(a => a.FieldColumn != null && !a.FieldColumn.Equals(String.Empty)).OrderBy(b => b.FieldOrder))
            {
                Permission permission = view.Permissions.FirstOrDefault(a => a.FieldId == field.FieldId);
                //if (permission == null )//|| permission.PermissionTypeId != 0)
                //{
                    columns.Add(field);
                    switch(field.FieldColumn.ToUpper())
                    {

                        case "ID":
                            select = select + "," + field.FieldColumn;
                            fId = true;
                            break;
                        case "UNIQUEID":
                            select = select + "," + field.FieldColumn;
                            fUniqueId = true;
                            break;
                        case "USERID":
                            select = select + "," + field.FieldColumn;
                            fUserId = true;
                            break;
                        case "DATO":
                            select = select + "," + field.FieldColumn;
                            fDato = true;
                            break;
                        default:
                            if (field.FieldTypeId == 16 || field.FieldTypeId == 17)
                            {
                                select = select + "," + field.FieldColumn+".STAsText() AS " + field.FieldColumn;
                            }
                            else
                            {
                                select = select + "," + field.FieldColumn;
                            }
                            break;
                    }

                //}

            }
            if(!fUniqueId)
                select = select + ",uniqueid";
            if (!fUserId)
                select = select + ",userid";
            if (!fDato)
                select = select + ",dato";
            if (!fId)
                select = select + ",id";
            select = "SELECT " + select.Substring(1);
            DataTable dt = new DataTable();
            using (SqlConnection connection = new SqlConnection(m.Form.ResourceName))
            {
                SqlCommand command = connection.CreateCommand();
                command.CommandText = select +" FROM "+ m.Form.ClassName + " WHERE Id="+m.ItemId.ToString();
                SqlDataAdapter adapter = new SqlDataAdapter(command);
                adapter.Fill(dt);
            }
            DataViewModel model = new DataViewModel
            {
                View = m.View,
                Form = m.Form,
            };
            foreach (DataRow row in dt.Rows)
            {
                for (int i = 0; i < dt.Columns.Count; i++)
                {
                    if (!row.IsNull(i))
                    {

                        string propertyName = dt.Columns[i].ColumnName;
                        string propertyNameUpper = propertyName.ToUpper();
                        switch (propertyNameUpper)
                        {
                            case "ID":
                                model.ItemId = (int)row[i];
                                foreach (Field field in model.Form.Fields)
                                {
                                    if (!string.IsNullOrEmpty(field.FieldColumn))
                                    {
                                        if (field.FieldColumn.ToUpper() == propertyNameUpper)
                                        {
                                            field.Data = row[i].ToString();
                                        }
                                    }
                                }
                                break;
                            case "UNIQUEID":
                                model.UniqueId = (string)row[i];
                                break;
                            case "USERID":
                                if (row[i] != DBNull.Value && row[i].ToString() != "")
                                {
                                    model.UserId = (string)row[i];
                                    UserInfo user = null;
                                    if (users.ContainsKey(model.UserId))
                                        user = users[model.UserId];
                                    else
                                    {
                                        MembershipUser user1 = Membership.GetUser(new Guid(model.UserId));
                                        if (user1 != null)
                                        {
                                            user = new UserInfo();
                                            user.UserName = user1.UserName;
                                            UserProfile profile = UserProfile.GetUserProfile(user1.UserName);
                                            if (profile != null)
                                            {
                                                Company company = repositoryCompanies.Get(profile.CompanyId);
                                                if (company != null)
                                                {
                                                    user.CompanyName = company.Name;
                                                }
                                            }
                                        }
                                        users.Add(model.UserId, user);
                                    }
                                    if (user != null)
                                    {
                                        model.UserName = user.UserName;
                                        model.Company = user.CompanyName;
                                    }
                                }
                                break;
                            case "DATO":
                                model.Date = (DateTime)row[i];
                                break;
                            default:
                                foreach (Field field in model.Form.Fields)
                                {
                                    if (!string.IsNullOrEmpty(field.FieldColumn))
                                    {
                                        if (field.FieldColumn.ToUpper() == propertyNameUpper)
                                        {

                                            if (field.FieldTypeId == 10)
                                            {
                                                DateTime dt1 = (DateTime)row[i];
                                                field.Data = dt1.ToString("dd-MM-yyy");
                                            }
                                            else
                                            {
                                                field.Data = row[i].ToString();
                                            }
                                        }
                                    }
                                }
                                break;
                        }
                    }
                }
            }
            return model;
        }
コード例 #37
0
        public ActionResult Edit(DataViewModel postModel, FormCollection formValues)
        {
            DataCreateModel dataCreateModel = CreateModel(postModel, formValues,Operation.Edit);
            DataViewModel model = dataCreateModel.Model;
            if (ModelState.IsValid)
            {
                RepositoryMapguide repositoryMapGuide = new RepositoryMapguide();
                repositoryMapGuide.Update(model);
                repositoryMapGuide.SendEmails(dataCreateModel);
                Models.View list = null;
                try
                {
                    list = model.View.Group.Views.Single(m => m.ViewTypeId == 5);
                }
                catch { }
                Models.View endView = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 7);
                if (endView == null)
                {
                    Models.View listUser = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 6);
                    if (listUser == null)
                    {
                        Models.View listAll = model.View.Group.Views.SingleOrDefault(m => m.ViewTypeId == 5);
                        if (listAll == null)
                        {
                            return View(model.View.Name, model);
                        }
                        else
                        {
                            return RedirectToAction("Index", new { id = listAll.ViewId, formId = model.Form.FormId });
                        }
                    }
                    else
                    {
                        return RedirectToAction("Index", new { id = listUser.ViewId, formId = model.Form.FormId });
                    }

                }
                else
                {
                    ViewBag.Id = model.View.ViewId;
                    model.View = endView;
                    return View(endView.Name, model);
                }
            }
            else
                return View(model.View.Name, model);
        }
コード例 #38
0
 public ActionResult Fields(int id, int formId)
 {
     RepositoryViews repository = new RepositoryViews();
     Models.View view = repository.Get(id);
     view.Group.DefaultFormId = formId;
     DataViewModel model = new DataViewModel
     {
         View = view,
         Form = view.Group.Forms.Single(m => m.FormId == formId)
     };
     return PartialView("System_Fields", model);
 }
コード例 #39
0
 public ActionResult Index(int id, int? itemId, int? formId, string column, bool? ascending)
 {
     RepositoryViews repositoryViews = new RepositoryViews();
     Models.View view = repositoryViews.Get(id);
     if (formId.HasValue)
         view.Group.DefaultFormId = formId.Value;
     if (itemId.HasValue)
     {
         //2 = Edit
         //3 = Delete
         //4 = Details
         if (view.ViewTypeId == 2 || view.ViewTypeId == 3 || view.ViewTypeId == 4)
         {
             RepositoryMapguide mapguide = new RepositoryMapguide();
             DataViewModel model = new DataViewModel()
             {
                 ItemId = itemId.Value,
                 View = view,
                 Form = view.Group.Forms.Single(m => m.FormId == view.Group.DefaultFormId)
             };
             model = mapguide.Get(model);
             return View(view.Name, model);
         }
     }
     else
     {
         //1 = Create
         if (view.ViewTypeId == 1)
         {
             DataViewModel model = new DataViewModel
             {
                 View = view,
                 Form = view.Group.Forms.SingleOrDefault(m => m.FormId == view.Group.DefaultFormId),
                 Date = DateTime.Now,
                 UniqueId = Guid.NewGuid().ToString()
             };
             if (User.Identity.IsAuthenticated)
             {
                 model.UserName = User.Identity.Name;
                 model.UserId = Membership.GetUser(User.Identity.Name).ProviderUserKey.ToString();
                 UserProfile profile = UserProfile.GetUserProfile(User.Identity.Name);
                 RepositoryCompanies rc = new RepositoryCompanies();
                 Company company = rc.Get(profile.CompanyId);
                 if (company != null)
                     model.Company = company.Name;
             }
             return View(view.Name, model);
         }
         //5 = List All
         else if (view.ViewTypeId == 5)
         {
             RepositoryMapguide mapguide = new RepositoryMapguide();
             DataListModel model = mapguide.GetList(view, "");
             return View(view.Name, model);
         }
         //6 = List My
         else if (view.ViewTypeId == 6)
         {
             RepositoryMapguide mapguide = new RepositoryMapguide();
             DataListModel model = null;
             if (User.Identity.IsAuthenticated)
             {
                 model = mapguide.GetList(view, Membership.GetUser(User.Identity.Name).ProviderUserKey.ToString());
             }
             else
             {
                 model = mapguide.GetList(view, "");
             }
             return View(view.Name, model);
         }
     }
     return View("Error");
 }
コード例 #40
0
        private Dictionary<string, string> GetProperties(DataViewModel model)
        {
            Dictionary<string, string> parameters = new Dictionary<string, string>();
            if (Properties.Settings.Default.ReverseDate)
                parameters.Add("Dato", String.Format("'{0:dd-MM-yyyy HH:mm:ss}'", model.Date));
            else
                parameters.Add("Dato", String.Format("'{0:yyyy-MM-dd HH:mm:ss}'", model.Date));
            parameters.Add("UniqueId", "'" + model.UniqueId + "'");
            if (!String.IsNullOrEmpty(model.UserId))
            {
                parameters.Add("UserId","'"+model.UserId+"'");
            }
            foreach (Field field in model.Form.Fields)
            {
                if (!String.IsNullOrEmpty(field.FieldColumn) && !String.IsNullOrEmpty(field.Data))
                {

                    if (field.FieldTypeId == 10)
                    {
                        DateTime dt = DateTime.Now;
                        DateTime.TryParse(field.Data, culture, DateTimeStyles.AssumeLocal, out dt);
                        if(Properties.Settings.Default.ReverseDate)
                            parameters.Add(field.FieldColumn, String.Format("'{0:dd-MM-yyyy HH:mm:ss}'", dt));
                        else
                            parameters.Add(field.FieldColumn, String.Format("'{0:yyyy-MM-dd HH:mm:ss}'", dt));
                    }
                    else if (field.FieldTypeId == 6 || field.FieldTypeId == 12 || field.FieldTypeId == 13)
                    {
                        string b = "0";
                        if (field.Data != "false" && field.Data != "off")
                            b = "1";
                        parameters.Add(field.FieldColumn, b);
                    }
                    else if (field.FieldTypeId == 15)
                    {
                        parameters.Add(field.FieldColumn, field.Data.Replace(',','.'));
                    }
                    else if (field.FieldTypeId == 16)
                    {
                        parameters.Add(field.FieldColumn, "geometry::STGeomFromText('" + field.Data + "'," + model.Form.SRS.ToUpper().Replace("EPSG:", "") + ")");
                    }
                    else if (field.FieldTypeId == 17)
                    {
                        parameters.Add(field.FieldColumn, "geometry::STGeomFromText('" + field.Data + "',4326)");
                    }
                    else if (field.FieldTypeId == 18)
                    {
                        parameters.Add(field.FieldColumn, field.Data);
                    }
                    else
                    {
                        if(field.FieldColumn.ToUpper()!="ID")
                            parameters.Add(field.FieldColumn, "'" + field.Data + "'");
                    }
                }
            }
            return parameters;
        }
コード例 #41
0
        public DataCreateModel CreateModel(NameValueCollection formValues, object files, Operation operation)
        {
            CultureInfo culture = CultureInfo.CreateSpecificCulture("da-DK");

            char[] trim = new char[] { '\"' };
            DataViewModel model = new DataViewModel();
            foreach (string key in formValues.Keys)
            {
                if (formValues[key].ToLower() != "null")
                {
                    switch (key)
                    {
                        case "FormId":
                            int formid = 0;
                            if (int.TryParse(formValues[key], out formid))
                            {
                                DatabaseFormsEntities db = new DatabaseFormsEntities();
                                model.Form = db.Forms.SingleOrDefault(m => m.FormId == formid);
                            }
                            break;
                        case "ViewId":
                            int viewid = 0;
                            if (int.TryParse(formValues[key], out viewid))
                            {
                                RepositoryViews repository = new RepositoryViews();
                                model.View = repository.Get(viewid);
                            }
                            break;
                        case "UniqueId":
                            model.UniqueId = formValues[key];
                            break;
                        case "UserId":
                            model.UserId = formValues[key];
                            break;
                        case "ItemId":
                            int itemid = 0;
                            if (int.TryParse(formValues[key], out itemid))
                            {
                                model.ItemId = itemid;
                            }
                            break;
                        case "Date":
                            DateTime date = DateTime.Now;
                            if (DateTime.TryParse(formValues[key], culture, DateTimeStyles.AssumeLocal, out date))
                            {
                                model.Date = date;
                            }
                            break;

                    }
                }
            }
            if (operation == Operation.Create)
            {
                model.Date = DateTime.Now;
                model.UniqueId = Guid.NewGuid().ToString();
                /*if (User.Identity.IsAuthenticated)
                {
                    model.UserName = User.Identity.Name;
                    model.UserId = Membership.GetUser(User.Identity.Name).ProviderUserKey.ToString();
                }*/
            }
            if (!String.IsNullOrEmpty(model.UserName))
            {
                UserProfile profile = UserProfile.GetUserProfile(model.UserName);
                RepositoryCompanies rc = new RepositoryCompanies();
                Company company = rc.Get(profile.CompanyId);
                if (company != null)
                    model.Company = company.Name;
            }

            List<DataEmailModel> emails = new List<DataEmailModel>();
            if (!String.IsNullOrEmpty(model.Form.Email))
            {
                if (operation == Operation.Create && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnCreate))
                {
                    emails.Add(new DataEmailModel { Email = model.Form.Email, View = model.Form.ViewEmailToReceiverOnCreate });
                }
                else if (operation == Operation.Edit && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnEdit))
                {
                    emails.Add(new DataEmailModel { Email = model.Form.Email, View = model.Form.ViewEmailToReceiverOnEdit });
                }
            }
            foreach (Field field in model.Form.Fields)
            {
                if (!string.IsNullOrEmpty(field.FieldColumn))
                {
                    #region 8 Upload
                    if (field.FieldTypeId == 8) //Upload
                    {
                        bool fundet = false;
                        if (files!=null && files is System.Collections.ObjectModel.Collection<MultipartFileData>)
                        {
                            foreach (MultipartFileData file in (System.Collections.ObjectModel.Collection<MultipartFileData>)files)
                            {

                                string id = file.Headers.ContentDisposition.Name.Trim(trim);

                                int id2 = 0;
                                if (int.TryParse(id, out id2))
                                {
                                    if (field.FieldId == id2)
                                    {

                                        string filename = file.Headers.ContentDisposition.FileName.Trim(trim);
                                        if (!string.IsNullOrEmpty(filename))
                                        {
                                            fundet = true;
                                            string name = model.UniqueId + "-" + field.FieldId.ToString() + Path.GetExtension(filename).ToLower();
                                            string filePath = Path.Combine(model.Form.UploadPhysicalPath, name);
                                            field.Data = name;

                                            int width = Properties.Settings.Default.MaxWidth;
                                            int height = Properties.Settings.Default.MaxHeight;
                                            System.Drawing.Image FullsizeImage = System.Drawing.Image.FromFile(file.LocalFileName);
                                            FullsizeImage.Save(filePath);
                                            FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);
                                            FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);

                                            if (FullsizeImage.Width <= width)
                                            {
                                                width = FullsizeImage.Width;
                                            }

                                            int NewHeight = FullsizeImage.Height * width / FullsizeImage.Width;
                                            if (NewHeight > height)
                                            {
                                                // Resize with height instead
                                                width = FullsizeImage.Width * height / FullsizeImage.Height;
                                                NewHeight = height;
                                            }

                                            System.Drawing.Image NewImage = FullsizeImage.GetThumbnailImage(width, NewHeight, null, IntPtr.Zero);

                                            // Clear handle to original file so that we can overwrite it if necessary
                                            FullsizeImage.Dispose();
                                            string newName = "Thumb_" + Path.GetFileName(name);
                                            string newFile = Path.Combine(model.Form.UploadPhysicalPath, newName);
                                            // Save resized picture
                                            NewImage.Save(newFile);
                                            NewImage.Dispose();
                                            File.Delete(file.LocalFileName);
                                        }
                                    }
                                }
                                else {
                                    File.Delete(file.LocalFileName);
                                }
                            }

                        }
                        else if (files !=null && files is System.Web.HttpFileCollectionWrapper)
                        {
                            HttpFileCollectionWrapper files2 = ((System.Web.HttpFileCollectionWrapper)files);

                            if (files2.AllKeys.Contains(field.FieldId.ToString()))
                            {
                                HttpPostedFileBase file = files2[field.FieldId.ToString()];
                                string filename = file.FileName;
                                if (!string.IsNullOrEmpty(filename))
                                {
                                    fundet = true;
                                    string name = model.UniqueId + "-" + field.FieldId.ToString() + Path.GetExtension(filename).ToLower();
                                    string filePath = Path.Combine(model.Form.UploadPhysicalPath, name);
                                    field.Data = name;

                                    int width = Properties.Settings.Default.MaxWidth;
                                    int height = Properties.Settings.Default.MaxHeight;

                                    file.SaveAs(filePath);
                                    System.Drawing.Image FullsizeImage = System.Drawing.Image.FromFile(filePath);
                                    FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);
                                    FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);

                                    if (FullsizeImage.Width <= width)
                                    {
                                        width = FullsizeImage.Width;
                                    }

                                    int NewHeight = FullsizeImage.Height * width / FullsizeImage.Width;
                                    if (NewHeight > height)
                                    {
                                        // Resize with height instead
                                        width = FullsizeImage.Width * height / FullsizeImage.Height;
                                        NewHeight = height;
                                    }

                                    System.Drawing.Image NewImage = FullsizeImage.GetThumbnailImage(width, NewHeight, null, IntPtr.Zero);

                                    // Clear handle to original file so that we can overwrite it if necessary
                                    FullsizeImage.Dispose();
                                    string newName = "Thumb_" + Path.GetFileName(name);
                                    string newFile = Path.Combine(model.Form.UploadPhysicalPath, newName);
                                    // Save resized picture
                                    NewImage.Save(newFile);
                                    NewImage.Dispose();
                                }
                            }
                        }
                        if (!fundet && !string.IsNullOrEmpty(formValues[field.FieldId.ToString()]))
                        {
                            string[] info = formValues[field.FieldId.ToString()].Split(new char[] { ';' });
                            int index = info[1].IndexOf(",");
                            string name = model.UniqueId + "-" + field.FieldId.ToString() + info[0].Replace("data:image/", ".");
                            field.Data = name;
                            if (info[1].Length > (index + 1))
                            {
                                string image = info[1].Substring(index + 1);
                                string filePath = Path.Combine(model.Form.UploadPhysicalPath, name);
                                using (var fs = new FileStream(filePath, FileMode.Create))
                                {
                                    byte[] byteFromString;
                                    byteFromString = Convert.FromBase64String(image);
                                    fs.Write(byteFromString, 0, byteFromString.Length);

                                }
                                try
                                {
                                    int width = Properties.Settings.Default.MaxWidth;
                                    int height = Properties.Settings.Default.MaxHeight;
                                    System.Drawing.Image FullsizeImage = System.Drawing.Image.FromFile(filePath);

                                    // Prevent using images internal thumbnail
                                    FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);
                                    FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);

                                    if (FullsizeImage.Width <= width)
                                    {
                                        width = FullsizeImage.Width;
                                    }

                                    int NewHeight = FullsizeImage.Height * width / FullsizeImage.Width;
                                    if (NewHeight > height)
                                    {
                                        // Resize with height instead
                                        width = FullsizeImage.Width * height / FullsizeImage.Height;
                                        NewHeight = height;
                                    }

                                    System.Drawing.Image NewImage = FullsizeImage.GetThumbnailImage(width, NewHeight, null, IntPtr.Zero);

                                    // Clear handle to original file so that we can overwrite it if necessary
                                    FullsizeImage.Dispose();
                                    string newName = "Thumb_" + Path.GetFileName(name);
                                    string newFile = Path.Combine(model.Form.UploadPhysicalPath, newName);
                                    // Save resized picture
                                    NewImage.Save(newFile);
                                    NewImage.Dispose();
                                }
                                catch
                                { }
                            }
                        }
                    }
                    #endregion
                    else if (field.FieldTypeId == 16) //Upload
                    {
                        field.Data = formValues["Geometri"];
                    }
                    else if (field.FieldTypeId == 17) //Upload
                    {
                        field.Data = formValues["Position"];
                    }
                    else if (field.FieldTypeId == 18) //Upload
                    {
                        field.Data = formValues["Accuracy"];
                    }
                    else
                    {
                        string value = formValues[field.FieldId.ToString()];
                        field.Data = value;
                        switch (field.FieldTypeId)
                        {
                            case 7:

                                if (email.IsMatch(field.Data))
                                {
                                    string emailView = "";
                                    Field operationField = null;
                                    if (operation == Operation.Create)
                                    {
                                        emailView = field.Form.ViewEmailToSenderOnCreate;
                                        operationField = field.Form.Fields.FirstOrDefault(m => m.FieldTypeId == 12);
                                    }
                                    else if (operation == Operation.Edit)
                                    {
                                        emailView = field.Form.ViewEmailToSenderOnEdit;
                                        operationField = field.Form.Fields.FirstOrDefault(m => m.FieldTypeId == 13);
                                    }
                                    if (!String.IsNullOrEmpty(emailView) && operationField != null)
                                    {
                                        string send = formValues[operationField.FieldId.ToString()];
                                        if (!String.IsNullOrEmpty(send))
                                        {
                                            if (send != "false" && send != "off")
                                                emails.Add(new DataEmailModel { Email = field.Data, View = emailView });
                                        }

                                    }
                                }
                                break;
                            /*case 10:

                                DateTime dt;
                                if (!DateTime.TryParse(field.Data, culture, DateTimeStyles.AssumeLocal, out dt))
                                {
                                    ModelState.AddModelError(field.FieldId.ToString(), field.Data + " er ikke en gyldig dato");
                                }
                                break;*/
                        }
                        Selection selection = field.Selections.SingleOrDefault(m => m.Name == field.Data);
                        if (selection != null)
                        {

                            if (!String.IsNullOrEmpty(selection.Email))
                            {
                                if (operation == Operation.Create && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnCreate))
                                {
                                    emails.Add(new DataEmailModel { Email = selection.Email, View = model.Form.ViewEmailToReceiverOnCreate });
                                }
                                else if (operation == Operation.Edit && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnEdit))
                                {
                                    emails.Add(new DataEmailModel { Email = selection.Email, View = model.Form.ViewEmailToReceiverOnEdit });
                                }

                            }
                        }

                    }
                }
            }
            return new DataCreateModel()
            {
                Emails = emails,
                Model = model,
            };
        }
コード例 #42
0
        private DataCreateModel CreateModel(DataViewModel postModel, FormCollection formValues, Operation operation)
        {
            CultureInfo culture = CultureInfo.CreateSpecificCulture("da-DK");
            RepositoryViews repository = new RepositoryViews();
            Models.View view = repository.Get(postModel.View.ViewId);

            DataViewModel model = new DataViewModel
            {
                View = view,
                Form = view.Group.Forms.Single(m => m.FormId == postModel.Form.FormId),
                Date = postModel.Date,
                UniqueId = postModel.UniqueId,
                ItemId = postModel.ItemId,
                UserName = postModel.UserName,
                UserId = postModel.UserId,
            };
            if (operation == Operation.Create)
            {
                model.Date = DateTime.Now;
                model.UniqueId = Guid.NewGuid().ToString();
                if (User.Identity.IsAuthenticated)
                {
                    model.UserName = User.Identity.Name;
                    model.UserId = Membership.GetUser(User.Identity.Name).ProviderUserKey.ToString();
                }
            }
            if (!String.IsNullOrEmpty(model.UserName))
            {
                UserProfile profile = UserProfile.GetUserProfile(model.UserName);
                RepositoryCompanies rc = new RepositoryCompanies();
                Company company = rc.Get(profile.CompanyId);
                if (company != null)
                    model.Company = company.Name;
            }

            List<DataEmailModel> emails = new List<DataEmailModel>();
            if (!String.IsNullOrEmpty(model.Form.Email))
            {
                if (operation == Operation.Create && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnCreate))
                {
                    emails.Add(new DataEmailModel { Email = model.Form.Email, View = model.Form.ViewEmailToReceiverOnCreate });
                }
                else if (operation == Operation.Edit && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnEdit))
                {
                    emails.Add(new DataEmailModel { Email = model.Form.Email, View = model.Form.ViewEmailToReceiverOnEdit });
                }
            }
            foreach (Field field in model.Form.Fields)
            {
                #region 8 Upload
                if (field.FieldTypeId == 8) //Upload
                {
                    string value = formValues[field.FieldId.ToString()];
                    if (!String.IsNullOrEmpty(value))
                    {
                        field.Data = value;
                    }
                    if (Request.Files.AllKeys.Contains(field.FieldId.ToString()))
                    {
                        HttpPostedFileBase file = Request.Files[field.FieldId.ToString()];
                        if (file.ContentLength > 0)
                        {
                            string name = model.UniqueId + "-" + field.FieldId.ToString() + Path.GetExtension(file.FileName);
                            string filePath = Path.Combine(model.Form.UploadPhysicalPath, name);
                            file.SaveAs(filePath);
                            field.Data = name;
                            try
                            {
                                int width = Properties.Settings.Default.MaxWidth;
                                int height = Properties.Settings.Default.MaxHeight;
                                System.Drawing.Image FullsizeImage = System.Drawing.Image.FromFile(filePath);

                                // Prevent using images internal thumbnail
                                FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);
                                FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);

                                if (FullsizeImage.Width <= width)
                                {
                                    width = FullsizeImage.Width;
                                }

                                int NewHeight = FullsizeImage.Height * width / FullsizeImage.Width;
                                if (NewHeight > height)
                                {
                                    // Resize with height instead
                                    width = FullsizeImage.Width * height / FullsizeImage.Height;
                                    NewHeight = height;
                                }

                                System.Drawing.Image NewImage = FullsizeImage.GetThumbnailImage(width, NewHeight, null, IntPtr.Zero);

                                // Clear handle to original file so that we can overwrite it if necessary
                                FullsizeImage.Dispose();
                                string newName = "Thumb_" + Path.GetFileName(name);
                                string newFile = Path.Combine(model.Form.UploadPhysicalPath, newName);
                                // Save resized picture
                                NewImage.Save(newFile);
                                NewImage.Dispose();
                            }
                            catch
                            { }
                        }
                        else if (field.Required)
                        {
                            ModelState.AddModelError(field.FieldId.ToString(), field.Name + " er påkrævet");
                        }
                    }
                }
                #endregion
                else if (field.FieldTypeId == 16) //Geometry
                {
                    string value = formValues["Geometri"];
                    if (String.IsNullOrEmpty(value))
                    {
                        if (field.Required)
                        {
                            string error = field.Name + " er påkrævet";
                            ModelState.AddModelError("Geometri", error);
                        }

                    }
                    else
                    {
                        field.Data = value;
                    }
                }
                else if (field.FieldTypeId == 17) //Position
                {
                    string value = formValues["Position"];
                    if (String.IsNullOrEmpty(value))
                    {
                        if (field.Required)
                        {
                            string error = field.Name + " er påkrævet";
                            ModelState.AddModelError("Position", error);
                        }

                    }
                    else
                    {
                        field.Data = value;
                    }
                }
                else if (field.FieldTypeId == 18) //Accuracy
                {
                    string value = formValues["Accuracy"];
                    if (String.IsNullOrEmpty(value))
                    {
                        if (field.Required)
                        {
                            string error = field.Name + " er påkrævet";
                            ModelState.AddModelError("Accuracy", error);
                        }

                    }
                    else
                    {
                        field.Data = value;
                    }
                }
                else
                {
                    string value = formValues[field.FieldId.ToString()];
                    if (String.IsNullOrEmpty(value))
                    {
                        if (field.Required)
                        {
                            string error = field.Name + " er påkrævet";
                            ModelState.AddModelError(field.FieldId.ToString(), error);
                        }

                    }
                    else
                    {
                        field.Data = value;
                        switch (field.FieldTypeId)
                        {
                            case 7:

                                if (email.IsMatch(field.Data))
                                {
                                    string emailView = "";
                                    Field operationField = null;
                                    if (operation == Operation.Create)
                                    {
                                        emailView = field.Form.ViewEmailToSenderOnCreate;
                                        operationField = field.Form.Fields.FirstOrDefault(m => m.FieldTypeId == 12);
                                    }
                                    else if (operation == Operation.Edit)
                                    {
                                        emailView = field.Form.ViewEmailToSenderOnEdit;
                                        operationField = field.Form.Fields.FirstOrDefault(m => m.FieldTypeId == 13);
                                    }
                                    if (!String.IsNullOrEmpty(emailView) && operationField != null)
                                    {
                                        string send = formValues[operationField.FieldId.ToString()];
                                        if (!String.IsNullOrEmpty(send))
                                        {
                                            if (send != "false")
                                                emails.Add(new DataEmailModel { Email = field.Data, View = emailView });
                                        }

                                    }
                                }
                                else
                                {
                                    ModelState.AddModelError(field.FieldId.ToString(), field.Data + " er ikke en gyldig email");
                                }
                                break;
                            case 10:

                                DateTime dt;
                                if (!DateTime.TryParse(field.Data, culture, DateTimeStyles.AssumeLocal, out dt))
                                {
                                    ModelState.AddModelError(field.FieldId.ToString(), field.Data + " er ikke en gyldig dato");
                                }
                                break;
                        }
                        Selection selection = field.Selections.SingleOrDefault(m => m.Name == field.Data);
                        if (selection != null)
                        {

                            if (!String.IsNullOrEmpty(selection.Email))
                            {
                                if (operation == Operation.Create && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnCreate))
                                {
                                    emails.Add(new DataEmailModel { Email = selection.Email, View = model.Form.ViewEmailToReceiverOnCreate });
                                }
                                else if (operation == Operation.Edit && !String.IsNullOrEmpty(model.Form.ViewEmailToReceiverOnEdit))
                                {
                                    emails.Add(new DataEmailModel { Email = selection.Email, View = model.Form.ViewEmailToReceiverOnEdit });
                                }

                            }
                        }
                    }
                }
            }
            return new DataCreateModel()
            {
                Emails = emails,
                Model = model,
            };
        }
コード例 #43
0
 public void Update(DataViewModel model)
 {
     Dictionary<string, string> parameters = GetProperties(model);
     string sql = "update " + model.Form.ClassName + " set ";
     foreach (KeyValuePair<string, string> pair in parameters)
     {
         sql = sql + pair.Key +"="+pair.Value+",";
     }
     sql = sql.TrimEnd(new char[] { ',' });
     sql = sql + " WHERE Id=" + model.ItemId;
     using (SqlConnection con = new SqlConnection(model.Form.ResourceName))
     {
         SqlCommand command = new SqlCommand(sql, con);
         con.Open();
         int j = command.ExecuteNonQuery();
     }
 }