1
+ using System ;
2
+ using System . Collections . Generic ;
3
+ using System . Linq ;
4
+ using System . Web ;
5
+
6
+ namespace Zenergy . Models
7
+ {
8
+ public class EventModel
9
+ {
10
+ public int eventId { get ; set ; }
11
+ public int roomId { get ; set ; }
12
+ public int activityId { get ; set ; }
13
+ public string eventName { get ; set ; }
14
+ public Nullable < decimal > eventPrice { get ; set ; }
15
+ public Nullable < decimal > eventDurationHours { get ; set ; }
16
+ public Nullable < int > eventMaxPeople { get ; set ; }
17
+ public string eventDescription { get ; set ; }
18
+ public Nullable < System . TimeSpan > timeBegin { get ; set ; }
19
+
20
+ public DateTime eventDate { get ; set ; }
21
+
22
+ public DateTime GetRegularEventDate ( string day )
23
+ {
24
+ var today = DateTime . Today ;
25
+ var dayofweek = today . DayOfWeek ;
26
+ var eventdate = new DateTime ( ) ;
27
+
28
+ if ( dayofweek . Equals ( DayOfWeek . Monday ) )
29
+ {
30
+ switch ( day )
31
+ {
32
+ case "Monday" :
33
+ eventdate = new DateTime ( today . Year , today . Month , today . Day ) ;
34
+ break ;
35
+ case "Tuesday" :
36
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 1 ) . Day ) ;
37
+ break ;
38
+ case "Wednesday" :
39
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 2 ) . Day ) ;
40
+ break ;
41
+ case "Thursday" :
42
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 3 ) . Day ) ;
43
+ break ;
44
+ case "Friday" :
45
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 4 ) . Day ) ;
46
+ break ;
47
+ case "Saturday" :
48
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 5 ) . Day ) ;
49
+ break ;
50
+ }
51
+ }
52
+ else if ( dayofweek . Equals ( DayOfWeek . Tuesday ) )
53
+ {
54
+ switch ( day )
55
+ {
56
+ case "Monday" :
57
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 1 ) . Day ) ;
58
+ break ;
59
+ case "Tuesday" :
60
+ eventdate = new DateTime ( today . Year , today . Month , today . Day ) ;
61
+ break ;
62
+ case "Wednesday" :
63
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 1 ) . Day ) ;
64
+ break ;
65
+ case "Thursday" :
66
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 2 ) . Day ) ;
67
+ break ;
68
+ case "Friday" :
69
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 3 ) . Day ) ;
70
+ break ;
71
+ case "Saturday" :
72
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 4 ) . Day ) ;
73
+ break ;
74
+ }
75
+ }
76
+ else if ( dayofweek . Equals ( DayOfWeek . Wednesday ) )
77
+ {
78
+ switch ( day )
79
+ {
80
+ case "Monday" :
81
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 2 ) . Day ) ;
82
+ break ;
83
+ case "Tuesday" :
84
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 1 ) . Day ) ;
85
+ break ;
86
+ case "Wednesday" :
87
+ eventdate = new DateTime ( today . Year , today . Month , today . Day ) ;
88
+ break ;
89
+ case "Thursday" :
90
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 1 ) . Day ) ;
91
+ break ;
92
+ case "Friday" :
93
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 2 ) . Day ) ;
94
+ break ;
95
+ case "Saturday" :
96
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 3 ) . Day ) ;
97
+ break ;
98
+ }
99
+ }
100
+ else if ( dayofweek . Equals ( DayOfWeek . Thursday ) )
101
+ {
102
+ switch ( day )
103
+ {
104
+ case "Monday" :
105
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 3 ) . Day ) ;
106
+ break ;
107
+ case "Tuesday" :
108
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 2 ) . Day ) ;
109
+ break ;
110
+ case "Wednesday" :
111
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 1 ) . Day ) ;
112
+ break ;
113
+ case "Thursday" :
114
+ eventdate = new DateTime ( today . Year , today . Month , today . Day ) ;
115
+ break ;
116
+ case "Friday" :
117
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 1 ) . Day ) ;
118
+ break ;
119
+ case "Saturday" :
120
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 2 ) . Day ) ;
121
+ break ;
122
+ }
123
+ }
124
+ else if ( dayofweek . Equals ( DayOfWeek . Friday ) )
125
+ {
126
+ switch ( day )
127
+ {
128
+ case "Monday" :
129
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 4 ) . Day ) ;
130
+ break ;
131
+ case "Tuesday" :
132
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 3 ) . Day ) ;
133
+ break ;
134
+ case "Wednesday" :
135
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 2 ) . Day ) ;
136
+ break ;
137
+ case "Thursday" :
138
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 1 ) . Day ) ;
139
+ break ;
140
+ case "Friday" :
141
+ eventdate = new DateTime ( today . Year , today . Month , today . Day ) ;
142
+ break ;
143
+ case "Saturday" :
144
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( 1 ) . Day ) ;
145
+ break ;
146
+ }
147
+ }
148
+ else
149
+ {
150
+ switch ( day )
151
+ {
152
+ case "Monday" :
153
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 5 ) . Day ) ;
154
+ break ;
155
+ case "Tuesday" :
156
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 4 ) . Day ) ;
157
+ break ;
158
+ case "Wednesday" :
159
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 3 ) . Day ) ;
160
+ break ;
161
+ case "Thursday" :
162
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 2 ) . Day ) ;
163
+ break ;
164
+ case "Friday" :
165
+ eventdate = new DateTime ( today . Year , today . Month , today . AddDays ( - 1 ) . Day ) ;
166
+ break ;
167
+ case "Saturday" :
168
+ eventdate = new DateTime ( today . Year , today . Month , today . Day ) ;
169
+ break ;
170
+ }
171
+ }
172
+ return eventdate ;
173
+ }
174
+
175
+ }
176
+
177
+
178
+ }
0 commit comments