Sfoglia il codice sorgente

Carine & Delia Feedback

master
30117125 4 anni fa
parent
commit
9d0cbfb76f

+ 4
- 1
UnivateProperties_API/Containers/Timeshare/Detailed/DetailedWeekDto.cs Vedi File

@@ -1,4 +1,5 @@
1
-using System;
1
+using Abp.Extensions;
2
+using System;
2 3
 using UnivateProperties_API.Model.Timeshare;
3 4
 
4 5
 namespace UnivateProperties_API.Containers.Timeshare.Detailed
@@ -38,6 +39,7 @@ namespace UnivateProperties_API.Containers.Timeshare.Detailed
38 39
             ArrivalDate = week.ArrivalDate.ToShortDateString().Replace('/', '-');
39 40
             DepartureDate = week.DepartureDate.ToShortDateString().Replace('/', '-');
40 41
             SellPrice = week.SellPrice;
42
+            AskingPrice = week.AskingPrice;
41 43
             AgentCommission = week.AgentCommision;
42 44
             Mandate = week.Mandate;
43 45
             Status = week.Status.Display;
@@ -74,6 +76,7 @@ namespace UnivateProperties_API.Containers.Timeshare.Detailed
74 76
         public string ArrivalDate { get; set; }
75 77
         public string DepartureDate { get; set; }
76 78
         public double SellPrice { get; set; }
79
+        public double AskingPrice { get; set; }
77 80
         public double AgentCommission { get; set; }
78 81
         public bool Mandate { get; set; }
79 82
         public string Status { get; set; }

+ 3
- 1
UnivateProperties_API/Containers/Timeshare/WeekDto.cs Vedi File

@@ -60,7 +60,9 @@ namespace UnivateProperties_API.Containers.Timeshare
60 60
                 MaxSleep = temp;
61 61
             }
62 62
             bool currentYear = split[9].Trim() == "Y";
63
-            LevyAmount = Convert.ToDouble(split[5].Trim());
63
+            string amt = split[5].Trim();
64
+            amt = amt.Replace('.', ',');
65
+            LevyAmount = Convert.ToDouble(amt);
64 66
             DateTime tempDate = MyCommon.GetDateFromString(currentYear ? split[6].Trim() : split[13].Trim());
65 67
             if(tempDate != DateTime.MinValue)
66 68
             {

+ 11
- 0
UnivateProperties_API/Controllers/Timeshare/TimeshareWeekController.cs Vedi File

@@ -50,6 +50,17 @@ namespace UnivateProperties_API.Controllers.Timeshare
50 50
             else return new OkResult();
51 51
         }
52 52
 
53
+        [HttpGet("getByResortCode/{resortCode}")]
54
+        public IActionResult GetAvailResort(string resortCode)
55
+        {
56
+            if (_Repo is WeekRepository)
57
+            {
58
+                var item = (_Repo as WeekRepository).GetAllByResortCode(resortCode);
59
+                return new OkObjectResult(item);
60
+            }
61
+            else return new OkResult();
62
+        }
63
+
53 64
         [HttpGet("getMyWeek/{id}")]
54 65
         public IActionResult GetMyWeek(int id)
55 66
         {

+ 3
- 3
UnivateProperties_API/Repository/Timeshare/IResortRepository.cs Vedi File

@@ -184,8 +184,8 @@ namespace UnivateProperties_API.Repository.Timeshare
184 184
             if (data.Images == null || data.Images.Count == 0)
185 185
             {
186 186
                 data.Images = new List<string>();
187
-                int count = 1; 
188
-                while( count < 5)
187
+                int count = 1;
188
+                while (count < 5)
189 189
                 {
190 190
                     client = new RestClient(string.Format("https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/{0}/image/{1}", resortCode, count))
191 191
                     {
@@ -198,7 +198,7 @@ namespace UnivateProperties_API.Repository.Timeshare
198 198
                     count++;
199 199
                 }
200 200
             }
201
-            #endregion
201
+#endregion
202 202
 
203 203
             #region Get Description
204 204
             data.Description = GetResortDescription(resortCode);            

+ 169
- 1
UnivateProperties_API/Repository/Timeshare/WeekRepository.cs Vedi File

@@ -1,4 +1,5 @@
1 1
 using Abp.Domain.Entities;
2
+using Abp.Extensions;
2 3
 using Microsoft.EntityFrameworkCore;
3 4
 using System;
4 5
 using System.Collections.Generic;
@@ -25,7 +26,8 @@ namespace UnivateProperties_API.Repository.Timeshare
25 26
 {
26 27
     public interface IWeekRepository : IRepository<TimeshareWeek>
27 28
     {
28
-        int SaveNewWeek(TimeshareWeekDto sellItem);        
29
+        int SaveNewWeek(TimeshareWeekDto sellItem);
30
+        List<WeekDto> GetAllByResortCode(string resortCode);
29 31
     }
30 32
 
31 33
     public class WeekRepository : IWeekRepository
@@ -64,6 +66,40 @@ namespace UnivateProperties_API.Repository.Timeshare
64 66
             return null;
65 67
         }
66 68
 
69
+        public List<WeekDto> GetAllByResortCode(string resortCode) 
70
+        {
71
+            List<WeekDto> list = new List<WeekDto>();
72
+            foreach (var item in GetDetailedByResortCode(resortCode))
73
+            {
74
+                list.Add(new WeekDto(item));
75
+            }
76
+
77
+            var listIds = list.Select(x => x.WeekUni).ToList();
78
+
79
+            foreach (var item in GetTenderWeeksByResortCode(resortCode))
80
+            {
81
+                if (!listIds.Contains(item.WeekUni))
82
+                    list.Add(item);
83
+            }
84
+            return list;
85
+        }
86
+
87
+        private List<TimeshareWeek> GetDetailedByResortCode(string resortCode)
88
+        {
89
+            var list = GetAllUsingResortCode(resortCode);
90
+            List<TimeshareWeek> weeklist = new List<TimeshareWeek>();
91
+            foreach (var item in list)
92
+            {
93
+                weeklist.Add(GetDetailedWeek(item));
94
+            }
95
+            return weeklist;
96
+        }
97
+
98
+        private List<TimeshareWeek> GetAllUsingResortCode(string resortCode)
99
+        {
100
+            return _dbContext.Weeks.Where(x => x.ResortCode == resortCode).ToList();
101
+        }
102
+
67 103
         public List<WeekDto> GetDtoListAll()
68 104
         {
69 105
             List<WeekDto> list = new List<WeekDto>();
@@ -291,6 +327,100 @@ namespace UnivateProperties_API.Repository.Timeshare
291 327
         public void Update(TimeshareWeek item)
292 328
         {
293 329
             var saved = _dbContext.Weeks.Where(w => w.Id == item.Id).FirstOrDefault();
330
+            
331
+            if (saved.RegionId != item.RegionId)
332
+            {
333
+                saved.RegionId = item.RegionId;
334
+            }
335
+            if (saved.ResortCode != item.ResortCode)
336
+            {
337
+                saved.ResortCode = item.ResortCode;
338
+            }
339
+            if (saved.UnitNumber != item.UnitNumber)
340
+            {
341
+                saved.UnitNumber = item.UnitNumber;
342
+            }
343
+            if (saved.Module != item.Module)
344
+            {
345
+                saved.Module = item.Module;
346
+            }
347
+            if (saved.Season != item.Season)
348
+            {
349
+                saved.Season = item.Season;
350
+            }
351
+            if (saved.Bedrooms != item.Bedrooms)
352
+            {
353
+                saved.Bedrooms = item.Bedrooms;
354
+            }
355
+            if (saved.MaxSleep != item.MaxSleep)
356
+            {
357
+                saved.MaxSleep = item.MaxSleep;
358
+            }
359
+            if (saved.LevyAmount != item.LevyAmount)
360
+            {
361
+                saved.LevyAmount = item.LevyAmount;
362
+            }
363
+            if (saved.WeekType != item.WeekType)
364
+            {
365
+                saved.WeekType = item.WeekType;
366
+            }
367
+            if (saved.ArrivalDate != item.ArrivalDate)
368
+            {
369
+                saved.ArrivalDate = item.ArrivalDate;
370
+            }
371
+            if (saved.DepartureDate != item.DepartureDate)
372
+            {
373
+                saved.DepartureDate = item.DepartureDate;
374
+            }
375
+            if (saved.AskingPrice != item.AskingPrice)
376
+            {
377
+                saved.AskingPrice = item.AskingPrice;
378
+            }
379
+            if (saved.SellPrice != item.SellPrice)
380
+            {
381
+                saved.SellPrice = item.SellPrice;
382
+            }
383
+            if (saved.CurrentYearBanked != item.CurrentYearBanked)
384
+            {
385
+                saved.CurrentYearBanked = item.CurrentYearBanked;
386
+            }
387
+            if (saved.BankedWith != item.BankedWith)
388
+            {
389
+                saved.BankedWith = item.BankedWith;
390
+            }
391
+
392
+            var owner = _dbContext.Individuals.Where(x => x.Id == item.Owner.Id).FirstOrDefault();
393
+
394
+            if (owner.Name != item.Owner.Name)
395
+            {
396
+                owner.Name = item.Owner.Name;
397
+            }
398
+            if (owner.Surname != item.Owner.Surname)
399
+            {
400
+                owner.Surname = item.Owner.Surname;
401
+            }
402
+            if (owner.IdNumber != item.Owner.IdNumber)
403
+            {
404
+                owner.IdNumber = item.Owner.IdNumber;
405
+            }
406
+            if (owner.CompanyRegNumber != item.Owner.CompanyRegNumber)
407
+            {
408
+                owner.CompanyRegNumber = item.Owner.CompanyRegNumber;
409
+            }
410
+            if (owner.Email != item.Owner.Email)
411
+            {
412
+                owner.Email = item.Owner.Email;
413
+            }
414
+            if (owner.CellNumber != item.Owner.CellNumber)
415
+            {
416
+                owner.CellNumber = item.Owner.CellNumber;
417
+            }
418
+            if (owner.Telephone != item.Owner.Telephone)
419
+            {
420
+                owner.Telephone = item.Owner.Telephone;
421
+            }
422
+
423
+
294 424
             if (saved.Mandate != item.Mandate)
295 425
             {
296 426
                 if (item.Mandate)
@@ -390,6 +520,44 @@ namespace UnivateProperties_API.Repository.Timeshare
390 520
             return list;
391 521
         }
392 522
 
523
+        public List<WeekDto> GetTenderWeeksByResortCode(string resortCode)
524
+        {
525
+            List<WeekDto> list = new List<WeekDto>();
526
+            string conString = string.Format("http://www.unipoint-consoft.co.za/nph-srep.exe?cluvavail.sch&CLUB=LPA&RESORT={0}&SUMMARY=N&HEAD=N", resortCode);
527
+            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(conString);
528
+            request.Method = "GET";
529
+            WebResponse response = request.GetResponse();
530
+            using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
531
+            {
532
+                string result = reader.ReadToEnd();
533
+
534
+                if (result.Length > 0)
535
+                {
536
+                    string cleanLine;
537
+                    string[] lines = result.Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries);
538
+                    if (lines[0].Trim() != "none")
539
+                    {
540
+                        foreach (string line in lines)
541
+                        {
542
+                            cleanLine = line.Replace("<br>", "");
543
+                            cleanLine = cleanLine.Replace("<br >", "");
544
+                            cleanLine = cleanLine.Replace("<br/>", "");
545
+                            cleanLine = cleanLine.Replace("<br />", "");
546
+                            list.Add(new WeekDto(GetTenderId(), cleanLine));
547
+                        }
548
+                    }
549
+                    
550
+                }
551
+            }
552
+            // Check that all regions are same as other
553
+            list
554
+                .Where(x => x.Region != null && x.Region.RegionCode == "FN")
555
+                .ToList()
556
+                .ForEach(x => x.Region.RegionCode = ChangeRegion(x.Region.RegionCode));
557
+            list = GetRegion(list);
558
+            return list;
559
+        }
560
+
393 561
         private List<WeekDto> GetRegion(List<WeekDto> list)
394 562
         {
395 563
             ProvinceRepository province = new ProvinceRepository(_dbContext);

Loading…
Annulla
Salva