Переглянути джерело

Updated Design User

master
30117125 4 роки тому
джерело
коміт
4a0d429efb

+ 1
- 0
UnivateProperties_API/Containers/Users/Role.cs Переглянути файл

@@ -13,5 +13,6 @@ namespace UnivateProperties_API.Containers.Users
13 13
         public const string Agent = "Agent";
14 14
         public const string ManagingAgent = "Managing Agent";
15 15
         public const string Developer = "Developer";
16
+        public const string Designer = "Designer";
16 17
     }
17 18
 }

+ 198
- 147
UnivateProperties_API/Repository/Timeshare/WeekRepository.cs Переглянути файл

@@ -227,6 +227,17 @@ namespace UnivateProperties_API.Repository.Timeshare
227 227
                         }
228 228
                     }
229 229
                 }
230
+                else if (user.IsUserInRole(Role.Designer) || user.IsUserInRole(Role.ManagingAgent))
231
+                {
232
+                    var _user = _dbContext.Individuals.FirstOrDefault(x => x.UserId == userId);
233
+                    if (_user != null)
234
+                    {
235
+                        foreach (var item in GetDetailedAll())
236
+                        {
237
+                            list.Add(new WeekDto(item));
238
+                        }
239
+                    }
240
+                }
230 241
                 else
231 242
                 {
232 243
                     var individual = _dbContext.Individuals.FirstOrDefault(x => x.UserId == userId);
@@ -839,19 +850,24 @@ namespace UnivateProperties_API.Repository.Timeshare
839 850
 
840 851
         public int SaveNewWeek(TimeshareWeekDto sellItem)
841 852
         {
853
+            
854
+
855
+            //var banking = _dbContext.BankAccounts.Where(b => b.Id == sellItem.OwnerObject.BankingDetails.Id).FirstOrDefault();
856
+            var status = _dbContext.Status.Where(s => s.Id == sellItem.StatusId && s.StatusType == StatusType.Timeshare).FirstOrDefault();
857
+
858
+            if (sellItem.AgentId != null)
859
+            {
860
+                var agent = _dbContext.Agents.Where(ag => ag.Id == sellItem.AgentId).FirstOrDefault();
861
+            }
862
+
842 863
 
843
-            var owner = _dbContext.Individuals.Where(x => x.UserId == sellItem.OwnerId).FirstOrDefault();
864
+            #region Address - Check if the user has an address, if not and a new address has been posted it can be updated
844 865
             var address = new Model.Misc.Address();
845
-            if (sellItem.OwnerObject.Address != null) 
866
+            if (sellItem.OwnerObject.Address != null)
846 867
             {
847 868
                 address = _dbContext.Addresses.Where(a => a.Id == sellItem.OwnerObject.Address.Id).FirstOrDefault();
848 869
             }
849
-            
850
-            var banking = _dbContext.BankAccounts.Where(b => b.Id == sellItem.OwnerObject.BankingDetails.Id).FirstOrDefault();
851
-            var status = _dbContext.Status.Where(s => s.Code == "A1" && s.StatusType == StatusType.Timeshare).FirstOrDefault();
852
-            var agent = _dbContext.Agents.Where(ag => ag.Id == sellItem.AgentId).FirstOrDefault();
853
-            
854
-            #region Address
870
+
855 871
             if (sellItem.OwnerObject.Address.PostalCode != "")
856 872
             {
857 873
                 if (address == null)
@@ -878,116 +894,205 @@ namespace UnivateProperties_API.Repository.Timeshare
878 894
             }
879 895
             #endregion
880 896
 
881
-            #region Banking
882
-            if (sellItem.OwnerObject.BankingDetails.AccountHolder != "")
883
-            {
884
-                if (banking == null)
885
-                {
886
-                    banking = new Model.Banks.BankAccount();
887
-                }
888
-                banking.AccountHolder = sellItem.OwnerObject.BankingDetails.AccountHolder;
889
-                banking.AccountNumber = sellItem.OwnerObject.BankingDetails.AccountNumber;
890
-                banking.BankId = sellItem.OwnerObject.BankingDetails.Bank.Id;
891 897
 
892
-                if (banking.Id == 0)
893
-                {
894
-                    _dbContext.Add(banking);
895
-                    Save();
896
-                }
897
-                else
898
-                {
899
-                    _dbContext.Entry(banking).State = EntityState.Modified;
900
-                    Save();
901
-                }
902
-            }
903
-            #endregion
898
+
899
+            //#region Banking
900
+            //if (sellItem.OwnerObject.BankingDetails.AccountHolder != "")
901
+            //{
902
+            //    if (banking == null)
903
+            //    {
904
+            //        banking = new Model.Banks.BankAccount();
905
+            //    }
906
+            //    banking.AccountHolder = sellItem.OwnerObject.BankingDetails.AccountHolder;
907
+            //    banking.AccountNumber = sellItem.OwnerObject.BankingDetails.AccountNumber;
908
+            //    banking.BankId = sellItem.OwnerObject.BankingDetails.Bank.Id;
909
+
910
+            //    if (banking.Id == 0)
911
+            //    {
912
+            //        _dbContext.Add(banking);
913
+            //        Save();
914
+            //    }
915
+            //    else
916
+            //    {
917
+            //        _dbContext.Entry(banking).State = EntityState.Modified;
918
+            //        Save();
919
+            //    }
920
+            //}
921
+            //#endregion
904 922
 
905 923
             #region Owner
906
-            if (!sellItem.CustomOwner)
924
+            //Check if an agent has listed the week.
925
+            var agentWeek = _dbContext.Agents.Where(x => x.UserId == sellItem.OwnerId && !x.IsDeleted).FirstOrDefault();
926
+            var owner = new Model.Users.Individual();
927
+            var indiv = new NonRegIndividual();
928
+
929
+            //Check if agentWeek is null. If null get an owner that listed the week
930
+            if (agentWeek == null)
907 931
             {
908
-                if (owner == null)
909
-                {                    
910
-                    owner = new Model.Users.Individual();
911
-                }
912
-                if (address != null)
913
-                {
914
-                    owner.AddressId = address.Id;
915
-                    owner.Address = address;
916
-                }
917
-                if (banking != null)
932
+                owner = _dbContext.Individuals.Where(x => x.UserId == sellItem.OwnerId).FirstOrDefault();
933
+            }
934
+
935
+            if (sellItem.CustomOwner)
936
+            {
937
+                sellItem.DisplayOwner = sellItem.OwnerObject.Name + " " + sellItem.OwnerObject.Surname;
938
+                indiv = new NonRegIndividual()
918 939
                 {
919
-                    owner.BankAccount = banking;
920
-                    owner.BankAccountId = banking.Id;
921
-                }
922
-                owner.Name = sellItem.OwnerObject.Name;
923
-                owner.Surname = sellItem.OwnerObject.Surname;
924
-                owner.IdNumber = sellItem.OwnerObject.IdNumber;
925
-                owner.CompanyRegNumber = sellItem.OwnerObject.CompanyRegNumber;
926
-                owner.Email = sellItem.OwnerObject.EmailAddress;
927
-                owner.CellNumber = sellItem.OwnerObject.CellNumber;
928
-                owner.Telephone = sellItem.OwnerObject.LandlineNumber;
929
-                sellItem.DisplayOwner = owner.Name + " " + owner.Surname;
940
+                    Name = sellItem.OwnerObject.Name,
941
+                    Surname = sellItem.OwnerObject.Surname,
942
+                    IDNumber = sellItem.OwnerObject.IdNumber,
943
+                    CompanyRegNumber = sellItem.OwnerObject.CompanyRegNumber,
944
+                    EmailAddress = sellItem.OwnerObject.EmailAddress,
945
+                    CellNumber = sellItem.OwnerObject.CellNumber,
946
+                    TelephoneNumber = sellItem.OwnerObject.LandlineNumber,
947
+                    SpouseCellnumber = sellItem.OwnerObject.SpouseCellnumber,
948
+                    SpouseEmail = sellItem.OwnerObject.SpouseEmail,
949
+                    SpouseName = sellItem.OwnerObject.SpouseName,
950
+                    SpouseSurname = sellItem.OwnerObject.SpouseSurname,
951
+                    SpouseTelephone = sellItem.OwnerObject.SpouseSurname,                    
952
+                };
930 953
 
931 954
                 switch (sellItem.OwnerObject.MaritalStatus?.ToUpper())
932 955
                 {
956
+                    case "":
957
+                        indiv.HowMarried = MarriedType.NotApplicable;
958
+                        break;
933 959
                     case "N/A":
934
-                        owner.HowMarried = MarriedType.NotApplicable;
960
+                        indiv.HowMarried = MarriedType.NotApplicable;
935 961
                         break;
936 962
                     case "IN COMMUNITY OF PROPERTY":
937
-                        owner.HowMarried = MarriedType.ICOP;
963
+                        indiv.HowMarried = MarriedType.ICOP;
938 964
                         break;
939 965
                     case "OUT OF COMMUNITY OF PROPERTY":
940
-                        owner.HowMarried = MarriedType.OCOP;
966
+                        indiv.HowMarried = MarriedType.OCOP;
941 967
                         break;
942 968
                     case "OTHER":
943
-                        owner.HowMarried = MarriedType.Other;
969
+                        indiv.HowMarried = MarriedType.Other;
944 970
                         break;
945 971
                     case "TRADITIONAL WEDDING":
946
-                        owner.HowMarried = MarriedType.Traditional;
972
+                        indiv.HowMarried = MarriedType.Traditional;
947 973
                         break;
948 974
                     case "SINGLE":
949
-                        owner.HowMarried = MarriedType.Single;
975
+                        indiv.HowMarried = MarriedType.Single;
950 976
                         break;
951 977
                     case "DIVORCED":
952
-                        owner.HowMarried = MarriedType.Divorced;
978
+                        indiv.HowMarried = MarriedType.Divorced;
953 979
                         break;
954 980
                     case "WIDOW":
955
-                        owner.HowMarried = MarriedType.Widow;
981
+                        indiv.HowMarried = MarriedType.Widow;
956 982
                         break;
957 983
                     case "COMMITTED RELATIONSHIP":
958
-                        owner.HowMarried = MarriedType.CommittedRelationship;
984
+                        indiv.HowMarried = MarriedType.CommittedRelationship;
959 985
                         break;
960 986
                     case "PARTNER":
961
-                        owner.HowMarried = MarriedType.Partner;
987
+                        indiv.HowMarried = MarriedType.Partner;
962 988
                         break;
963 989
                     default:
964
-                        owner.HowMarried = MarriedType.NotApplicable;
990
+                        indiv.HowMarried = MarriedType.NotApplicable;
965 991
                         break;
966 992
                 }
993
+                _dbContext.NonRegIndividuals.Add(indiv);
994
+                _dbContext.SaveChanges();
995
+            }
996
+            else
997
+            {
998
+                if (owner == null)
999
+                {
1000
+                    owner = new Model.Users.Individual();
1001
+                }
967 1002
 
968
-                owner.SpouseCellnumber = sellItem.OwnerObject.SpouseCellnumber;
969
-                owner.SpouseEmail = sellItem.OwnerObject.SpouseEmail;
970
-                owner.SpouseName = sellItem.OwnerObject.SpouseName;
971
-                owner.SpouseSurname = sellItem.OwnerObject.SpouseSurname;
972
-                owner.SpouseTelephone = sellItem.OwnerObject.SpouseSurname;
1003
+                if (address != null)
1004
+                {
1005
+                    owner.AddressId = address.Id;
1006
+                    owner.Address = address;
1007
+                }
973 1008
 
974
-                if (owner.Id == 0)
1009
+                if (agentWeek == null)
975 1010
                 {
976
-                    _dbContext.Add(owner);
977
-                    Save();
1011
+                    owner.Name = sellItem.OwnerObject.Name;
1012
+                    owner.Surname = sellItem.OwnerObject.Surname;
1013
+                    owner.IdNumber = sellItem.OwnerObject.IdNumber;
1014
+                    owner.CompanyRegNumber = sellItem.OwnerObject.CompanyRegNumber;
1015
+                    owner.Email = sellItem.OwnerObject.EmailAddress;
1016
+                    owner.CellNumber = sellItem.OwnerObject.CellNumber;
1017
+                    owner.Telephone = sellItem.OwnerObject.LandlineNumber;
1018
+                    sellItem.DisplayOwner = owner.Name + " " + owner.Surname;
1019
+
1020
+                    switch (sellItem.OwnerObject.MaritalStatus?.ToUpper())
1021
+                    {
1022
+                        case "N/A":
1023
+                            owner.HowMarried = MarriedType.NotApplicable;
1024
+                            break;
1025
+                        case "IN COMMUNITY OF PROPERTY":
1026
+                            owner.HowMarried = MarriedType.ICOP;
1027
+                            break;
1028
+                        case "OUT OF COMMUNITY OF PROPERTY":
1029
+                            owner.HowMarried = MarriedType.OCOP;
1030
+                            break;
1031
+                        case "OTHER":
1032
+                            owner.HowMarried = MarriedType.Other;
1033
+                            break;
1034
+                        case "TRADITIONAL WEDDING":
1035
+                            owner.HowMarried = MarriedType.Traditional;
1036
+                            break;
1037
+                        case "SINGLE":
1038
+                            owner.HowMarried = MarriedType.Single;
1039
+                            break;
1040
+                        case "DIVORCED":
1041
+                            owner.HowMarried = MarriedType.Divorced;
1042
+                            break;
1043
+                        case "WIDOW":
1044
+                            owner.HowMarried = MarriedType.Widow;
1045
+                            break;
1046
+                        case "COMMITTED RELATIONSHIP":
1047
+                            owner.HowMarried = MarriedType.CommittedRelationship;
1048
+                            break;
1049
+                        case "PARTNER":
1050
+                            owner.HowMarried = MarriedType.Partner;
1051
+                            break;
1052
+                        default:
1053
+                            owner.HowMarried = MarriedType.NotApplicable;
1054
+                            break;
1055
+                    }
1056
+
1057
+                    owner.SpouseCellnumber = sellItem.OwnerObject.SpouseCellnumber;
1058
+                    owner.SpouseEmail = sellItem.OwnerObject.SpouseEmail;
1059
+                    owner.SpouseName = sellItem.OwnerObject.SpouseName;
1060
+                    owner.SpouseSurname = sellItem.OwnerObject.SpouseSurname;
1061
+                    owner.SpouseTelephone = sellItem.OwnerObject.SpouseSurname;
1062
+
1063
+                    if (owner.Id == 0)
1064
+                    {
1065
+                        _dbContext.Add(owner);
1066
+                        Save();
1067
+                    }
1068
+                    else
1069
+                    {
1070
+                        _dbContext.Entry(owner).State = EntityState.Modified;
1071
+                        Save();
1072
+                    }
978 1073
                 }
979 1074
                 else
980 1075
                 {
981
-                    _dbContext.Entry(owner).State = EntityState.Modified;
982
-                    Save();
1076
+                    agentWeek.Name = sellItem.OwnerObject.Name;
1077
+                    agentWeek.Surname = sellItem.OwnerObject.Surname;                    
1078
+                    agentWeek.Email = sellItem.OwnerObject.EmailAddress;
1079
+                    agentWeek.CellNumber = sellItem.OwnerObject.CellNumber;
1080
+                    agentWeek.Telephone = sellItem.OwnerObject.LandlineNumber;
1081
+                    sellItem.DisplayOwner = agentWeek.Name + " " + agentWeek.Surname;                  
1082
+
1083
+                    if (agentWeek.Id == 0)
1084
+                    {
1085
+                        _dbContext.Add(agentWeek);
1086
+                        Save();
1087
+                    }
1088
+                    else
1089
+                    {
1090
+                        _dbContext.Entry(agentWeek).State = EntityState.Modified;
1091
+                        Save();
1092
+                    }
983 1093
                 }
984 1094
             }
985
-            else 
986
-            {
987
-                sellItem.DisplayOwner = sellItem.OwnerObject.Name + " " + sellItem.OwnerObject.Surname;
988
-            }
989
-            
990
-            #endregion
1095
+            #endregion           
991 1096
 
992 1097
             var week = new TimeshareWeek();
993 1098
             foreach (string prop in week.GetAllProperties())
@@ -995,15 +1100,19 @@ namespace UnivateProperties_API.Repository.Timeshare
995 1100
                 if (prop != "Item" && prop != "Display")
996 1101
                     week[prop] = sellItem[prop];
997 1102
             }
998
-            week.Region = null;            
999
-            week.RegionId = sellItem.Region.Id;                        
1103
+            week.Region = null;
1104
+            week.RegionId = sellItem.Region.Id;
1000 1105
 
1001
-            if (owner != null) 
1106
+            //if agentWeek then set week owner equal to agentWeek.id else
1107
+            if (agentWeek != null)
1108
+            {
1109
+                week.OwnerId = agentWeek.Id;
1110
+            }
1111
+            else
1002 1112
             {
1003 1113
                 week.OwnerId = owner.Id;
1004 1114
             }
1005
-            
1006
-            
1115
+
1007 1116
             if (week.Mandate)
1008 1117
                 week.DateMandated = DateTime.Now;
1009 1118
 
@@ -1013,7 +1122,7 @@ namespace UnivateProperties_API.Repository.Timeshare
1013 1122
 
1014 1123
             try
1015 1124
             {
1016
-                if (agent != null)
1125
+                if (agentWeek != null)
1017 1126
                 {
1018 1127
                     template = _dbContext.Templates.FirstOrDefault(x => x.Name == "WeekLoaded-Agent");
1019 1128
                     if (template != null)
@@ -1037,13 +1146,11 @@ namespace UnivateProperties_API.Repository.Timeshare
1037 1146
 
1038 1147
                 }
1039 1148
             }
1040
-            catch(Exception ex)
1149
+            catch (Exception ex)
1041 1150
             {
1042 1151
                 throw (ex);
1043 1152
             }
1044 1153
 
1045
-
1046
-
1047 1154
             if (sellItem.StatusId == 0)
1048 1155
             {
1049 1156
                 var statuses = _dbContext.Status.ToList();
@@ -1054,69 +1161,13 @@ namespace UnivateProperties_API.Repository.Timeshare
1054 1161
                         week.StatusId = statusItem.Id;
1055 1162
                     }
1056 1163
                 }
1057
-            }            
1164
+            }
1165
+
1058 1166
             _dbContext.Add(week);
1059 1167
             Save();
1060 1168
             if (sellItem.CustomOwner)
1061 1169
             {
1062
-                var indiv = new NonRegIndividual()
1063
-                {
1064
-                    Name = sellItem.OwnerObject.Name,
1065
-                    Surname = sellItem.OwnerObject.Surname,
1066
-                    IDNumber = sellItem.OwnerObject.IdNumber,
1067
-                    CompanyRegNumber = sellItem.OwnerObject.CompanyRegNumber,
1068
-                    EmailAddress = sellItem.OwnerObject.EmailAddress,
1069
-                    CellNumber = sellItem.OwnerObject.CellNumber,
1070
-                    TelephoneNumber = sellItem.OwnerObject.LandlineNumber,
1071
-                    SpouseCellnumber = sellItem.OwnerObject.SpouseCellnumber,
1072
-                    SpouseEmail = sellItem.OwnerObject.SpouseEmail,
1073
-                    SpouseName = sellItem.OwnerObject.SpouseName,
1074
-                    SpouseSurname = sellItem.OwnerObject.SpouseSurname,
1075
-                    SpouseTelephone = sellItem.OwnerObject.SpouseSurname,
1076
-                    WeekId = week.Id
1077
-                };
1078
-
1079
-                switch (sellItem.OwnerObject.MaritalStatus?.ToUpper())
1080
-                {
1081
-                    case "":
1082
-                        indiv.HowMarried = MarriedType.NotApplicable;
1083
-                        break;
1084
-                    case "N/A":
1085
-                        indiv.HowMarried = MarriedType.NotApplicable;
1086
-                        break;
1087
-                    case "IN COMMUNITY OF PROPERTY":
1088
-                        indiv.HowMarried = MarriedType.ICOP;
1089
-                        break;
1090
-                    case "OUT OF COMMUNITY OF PROPERTY":
1091
-                        indiv.HowMarried = MarriedType.OCOP;
1092
-                        break;
1093
-                    case "OTHER":
1094
-                        indiv.HowMarried = MarriedType.Other;
1095
-                        break;
1096
-                    case "TRADITIONAL WEDDING":
1097
-                        indiv.HowMarried = MarriedType.Traditional;
1098
-                        break;
1099
-                    case "SINGLE":
1100
-                        indiv.HowMarried = MarriedType.Single;
1101
-                        break;
1102
-                    case "DIVORCED":
1103
-                        indiv.HowMarried = MarriedType.Divorced;
1104
-                        break;
1105
-                    case "WIDOW":
1106
-                        indiv.HowMarried = MarriedType.Widow;
1107
-                        break;
1108
-                    case "COMMITTED RELATIONSHIP":
1109
-                        indiv.HowMarried = MarriedType.CommittedRelationship;
1110
-                        break;
1111
-                    case "PARTNER":
1112
-                        indiv.HowMarried = MarriedType.Partner;
1113
-                        break;
1114
-                    default:
1115
-                        indiv.HowMarried = MarriedType.NotApplicable;
1116
-                        break;
1117
-                }
1118
-                _dbContext.NonRegIndividuals.Add(indiv);
1119
-                _dbContext.SaveChanges();
1170
+                indiv.WeekId = week.Id;
1120 1171
             }
1121 1172
             return week.Id;
1122 1173
         }

+ 2
- 2
UnivateProperties_API/Repository/Users/RegisterRepository.cs Переглянути файл

@@ -430,8 +430,8 @@ namespace UnivateProperties_API.Repository.Users
430 430
 
431 431
                 //change below to test locally or QA
432 432
                 //string url = "http://localhost:8080/#/forgotPasswordReset/" + linkStr;
433
-                string url = "http://training.provision-sa.com:122/#/forgotPasswordReset/" + linkStr;
434
-                //string url = "https://www.pvsl.co.za:97/#/forgotPasswordReset/" + linkStr;
433
+                //string url = "http://training.provision-sa.com:122/#/forgotPasswordReset/" + linkStr;
434
+                string url = "https://www.pvsl.co.za:97/#/forgotPasswordReset/" + linkStr;
435 435
                 //string url = "https://www.univateproperties.co.za/#/forgotPasswordReset/" + linkStr;
436 436
 
437 437
                 mailer.ForgotPassword(indiv, url);

+ 2
- 1
UnivateProperties_API/appsettings.json Переглянути файл

@@ -9,7 +9,8 @@
9 9
   },
10 10
   "AllowedHosts": "*",
11 11
   "ConnectionStrings": {
12
-    "DefaultConnection": "Data Source=localhost;Initial Catalog=UniVate;Persist Security Info=True;User Id=Provision;Password=J%Xvk8xGeT;Pooling=false;",
12
+    "DefaultConnection": "Data Source=localhost;Initial Catalog=UniVateDemo;Persist Security Info=True;User Id=Provision;Password=What123!;Pooling=false;",
13
+    //"DefaultConnection": "Data Source=localhost;Initial Catalog=UniVateDemo;Persist Security Info=True;User Id=Provision;Password=J%Xvk8xGeT;Pooling=false;",
13 14
     "TenderConnection": "http://www.unipoint-consoft.co.za/nph-srep.exe?cluvavail.sch&CLUB=LPA&RESORT=ALL&SUMMARY=N&HEAD=N",
14 15
     "ReservationsURL": "https://www.pvsl.co.za:85/ReservationsWebService.asmx", //Please note that ReservationsWebService must be in this case. 
15 16
     "ReservationsUserCode": "UniInt",

Завантаження…
Відмінити
Зберегти