public ActionResult Index()
        {
            return authenticatedAction(new String[] { "UR" }, () => formAction(
                    () => {
                        logger.Debug(className + ".Index accessed.");
                        ViewData["Items"] = table.OrderBy(p => p.sortIndex).ToList();
                        return View();
                    },
                    () => sideEffectingAction(() => {
                        logger.Debug(className + ".Index updating.");

                        //update properties of each row, with the exception of...
                        var formVars = extractRowParams(Request.Form);
                        foreach (KeyValuePair<String, Dictionary<String, String>> itemPair in formVars) {
                            var code = itemPair.Value["code"];
                            TicketSource possibleItem = table.FirstOrDefault(p => p.code == code);

                            //VALIDATION HAPPENS HERE
                            validationLogPrefix = className + "Index";
                            ValidateStrLen(itemPair.Value["description"], 32, "Ticket source descriptions");
                            //AND THEN ENDS.

                            //does it exist - or do we have to add it in?
                            if (possibleItem != null) {
                                possibleItem.description = itemPair.Value["description"];
                                logger.DebugFormat(className + "Index updating {0}", possibleItem.ToString());
                            } else {
                                possibleItem = new TicketSource();
                                possibleItem.code = itemPair.Value["code"];
                                possibleItem.description = itemPair.Value["description"];
                                possibleItem.active_p = "A";
                                table.AddObject(possibleItem);
                                logger.ErrorFormat(className + "Index adding {0} with description {1}", itemPair.Key, itemPair.Value["description"]);
                            }

                            //set the "active" as well.
                            if (itemPair.Value.ContainsKey("active")) {
                                possibleItem.active_p = "A";
                            } else {
                                possibleItem.active_p = "N";
                            }

                            table.Context.SaveChanges();
                        }

                        //orderingindex, which we do seperately.
                        setSortIndexes(table, x => x.code);

                        updateTableTimestamp("T_CRFSRT");
                    }
               )));
        }
Esempio n. 2
0
 /// <summary>
 /// Deprecated Method for adding a new object to the TicketSources EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToTicketSources(TicketSource ticketSource)
 {
     base.AddObject("TicketSources", ticketSource);
 }
Esempio n. 3
0
 /// <summary>
 /// Create a new TicketSource object.
 /// </summary>
 /// <param name="code">Initial value of the code property.</param>
 /// <param name="description">Initial value of the description property.</param>
 /// <param name="sortIndex">Initial value of the sortIndex property.</param>
 public static TicketSource CreateTicketSource(global::System.String code, global::System.String description, global::System.Int16 sortIndex)
 {
     TicketSource ticketSource = new TicketSource();
     ticketSource.code = code;
     ticketSource.description = description;
     ticketSource.sortIndex = sortIndex;
     return ticketSource;
 }