Browse Source

VisitorManager.Async.cs changes

allauddin 1 year ago
parent
commit
a6aa2db698
1 changed files with 21 additions and 9 deletions
  1. 21
    9
      CRM.Visitors/Managers/VisitorManager.Async.cs

+ 21
- 9
CRM.Visitors/Managers/VisitorManager.Async.cs View File

@@ -87,15 +87,20 @@ namespace Bizgaze.CRM.Visitors.Managers
87 87
         }
88 88
         #endregion
89 89
         #region Getting data By VisitorId
90
-         public async Task<SelectResponse> GetVisitordataByIdAsync(SelectRequest request, long VisitorId)
90
+        public async Task<SelectResponse> GetVisitordataByIdAsync(SelectRequest request, long VisitorId)
91 91
         {
92 92
             var exp = request.Filter();
93 93
             exp = exp & Unibase.Data.Expressions.Exp.Eq(Infos.Visitor.Property.VisitorId.ToString(), VisitorId);
94 94
             request.Filter(exp);
95
-            //var sql = "select c.cityname, e.contactname,* from bizgazecrm_visitors v inner join bizgazecrm_contacts e on e.contactid = v.employeeid inner join bizgazecrm_cities c on c.cityid = v.cityid where visitorid=" + VisitorId;
96
-            var sql = "select d.visitorid,d.fullname,d.code,(d.checkindate|| ' & ' ||d.checkintime) as datetime,d.cityname,d.contactname,Case when d.purposeofvisit=1 then 'Interview'  when d.purposeofvisit=2 then 'Official Meeting'  when d.purposeofvisit=3 then 'Meeting an Employee'  when d.purposeofvisit=4 then 'Package Delivery' when d.purposeofvisit=5 then 'Others' end as purposeofvisittype,d.photourl from (select v.visitorid,v.fullname,v.code,v.photourl,  TO_CHAR(v.checkindate, 'DD/MM/YYYY') as checkindate,  UPPER(TO_CHAR(v.checkindate, 'HH:MI:SS AM')) AS checkintime,v.purposeofvisit,c.cityname, e.contactname from bizgazecrm_visitors v inner join bizgazecrm_contacts e on e.contactid = v.employeeid inner join bizgazecrm_cities c on c.cityid = v.cityid)d where visitorid = " + VisitorId;
97
-            var dt = await _dbContext.GetTableAsync(GetConnectionAsync(request), sql, Unibase.Data.Enums.InstructionType.Query, null);
98
-            var tabledata = Unibase.Core.Helpers.JsonHelper.ToJson(dt);
95
+            var select = "select code from bizgazecrm_visitors  where visitorid=" + VisitorId;
96
+            var dt = await _dbContext.GetTableAsync(GetConnectionAsync(request), select, Unibase.Data.Enums.InstructionType.Query, null);
97
+            var code = dt.Rows[0]["code"].ToString();
98
+            var select1 = "select visitorid from bizgazecrm_visitors  where code='" + code + "' order by createddate desc";
99
+            var dt1 = await _dbContext.GetTableAsync(GetConnectionAsync(request), select1, Unibase.Data.Enums.InstructionType.Query, null);
100
+            var id = Convert.ToInt64(dt1.Rows[0]["visitorid"]);
101
+            var sql = "select d.fullname,d.code,(d.checkindate|| ' & ' ||d.checkintime) as datetime,d.cityname,d.contactname,Case when d.purposeofvisit=1 then 'Interview'  when d.purposeofvisit=2 then 'Official Meeting'  when d.purposeofvisit=3 then 'Meeting an Employee'  when d.purposeofvisit=4 then 'Package Delivery' when d.purposeofvisit=5 then 'Others' end as purposeofvisittype,d.photourl from (select v.visitorid,v.fullname,v.code,v.photourl,  TO_CHAR(v.checkindate, 'DD/MM/YYYY') as checkindate,  UPPER(TO_CHAR(v.checkindate, 'HH:MI:SS AM')) AS checkintime,v.purposeofvisit,c.cityname, e.contactname from bizgazecrm_visitors v inner join bizgazecrm_contacts e on e.contactid = v.employeeid inner join bizgazecrm_cities c on c.cityid = v.cityid)d where visitorid = " + id;
102
+            var dt2 = await _dbContext.GetTableAsync(GetConnectionAsync(request), sql, Unibase.Data.Enums.InstructionType.Query, null);
103
+            var tabledata = Unibase.Core.Helpers.JsonHelper.ToJson(dt2);
99 104
             string json = System.Text.Json.JsonSerializer.Serialize(tabledata);
100 105
             return new SelectResponse() { Result = json };
101 106
         }
@@ -119,6 +124,13 @@ namespace Bizgaze.CRM.Visitors.Managers
119 124
             //var templateManager = //Unibase.Dependency.DependencyConfig.Resolve<Unibase.Platform.Templates.Managers.ITemplateManager>();
120 125
             var _dbContext = DependencyConfig.Resolve<Unibase.Data.IDbContext>();
121 126
             Unibase.Platform.Templates.Helpers.TemplateHelper helper = new Unibase.Platform.Templates.Helpers.TemplateHelper(_dbContext);
127
+            var visitordata = GetVisitordataByIdAsync(srequest, VisitorId);
128
+            var res = visitordata.Result;
129
+            var deserializeObj = System.Text.Json.JsonSerializer.Deserialize<List<Dictionary<string, object>>>(res.Result);
130
+            var city = deserializeObj[0]["cityname"].ToString();
131
+            var contactname = deserializeObj[0]["contactname"].ToString();
132
+            var purposeofvisit = deserializeObj[0]["purposeofvisittype"].ToString();
133
+            var date = deserializeObj[0]["datetime"];
122 134
             var VisitorInfo_ = await GetVisitorByIdAsync(srequest, VisitorId);
123 135
             if (VisitorInfo_.Result != null)
124 136
             {
@@ -137,11 +149,11 @@ namespace Bizgaze.CRM.Visitors.Managers
137 149
                 }
138 150
                 if (template.Contains("{{cityname}}"))
139 151
                 {
140
-                    template = template.Replace("{{cityname}}", VisitorInfo_.Result.CityName);
152
+                    template = template.Replace("{{cityname}}", city);
141 153
                 }
142 154
                 if (template.Contains("{{purposeofvisit}}"))
143 155
                 {
144
-                    template = template.Replace("{{purposeofvisit}}", VisitorInfo_.Result.PurposeOfVisitType);
156
+                    template = template.Replace("{{purposeofvisit}}", purposeofvisit);
145 157
                 }
146 158
                 if (template.Contains("{{phonenumber}}"))
147 159
                 {
@@ -153,7 +165,7 @@ namespace Bizgaze.CRM.Visitors.Managers
153 165
                 }
154 166
                 if (template.Contains("{{createddate}}"))
155 167
                 {
156
-                    template = template.Replace("{{createddate}}", CreatedDate.ToString());
168
+                    template = template.Replace("{{createddate}}", date.ToString());
157 169
                 }
158 170
                 if (template.Contains("{{photourl}}"))
159 171
                 {
@@ -161,7 +173,7 @@ namespace Bizgaze.CRM.Visitors.Managers
161 173
                 }
162 174
                 if (template.Contains("{{HostName}}"))
163 175
                 {
164
-                    template = template.Replace("{{HostName}}", VisitorInfo_.Result.HostName);
176
+                    template = template.Replace("{{HostName}}", contactname);
165 177
                 }
166 178
                 if (template.Contains("{{imageurl}}"))
167 179
                 {

Loading…
Cancel
Save