|
@@ -16,6 +16,8 @@ using Unibase.Platform.Data;
|
16
|
16
|
using Unibase.Platform.Forms.Providers;
|
17
|
17
|
using Unibase.Platform.Keys;
|
18
|
18
|
using Unibase.Platform.Series.Managers;
|
|
19
|
+using System.Text.Json;
|
|
20
|
+using iText.Layout.Element;
|
19
|
21
|
|
20
|
22
|
namespace Bizgaze.CRM.Visitors.ActionProviders
|
21
|
23
|
{
|
|
@@ -73,13 +75,18 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
|
73
|
75
|
var connection = GetConnection(request);
|
74
|
76
|
ExpandoObject obj1 = dictObj["RequestObj"];
|
75
|
77
|
var req = obj1 as IDictionary<string, object>;
|
|
78
|
+ // var requestObj = dictObj["RequestObj"] as IDictionary<string, object>;
|
|
79
|
+ // breakupTenureItems = Convert.ChangeType(requestObj["breakuptenure"].ToString(), typeof(object)).ToString();
|
|
80
|
+
|
76
|
81
|
var mobileNumber = "";
|
77
|
82
|
var emailId = "";
|
78
|
83
|
var visitorName = "";
|
79
|
84
|
var photourl = "";
|
|
85
|
+
|
80
|
86
|
var visitorInfo = docParameters.Find(x => x.DocType == "bizgazecrm_visitors");
|
81
|
87
|
if (visitorInfo != null)
|
82
|
88
|
{
|
|
89
|
+
|
83
|
90
|
long installedAppId = 0;
|
84
|
91
|
var stageStatusName = "";
|
85
|
92
|
var code = "";
|
|
@@ -91,252 +98,264 @@ namespace Bizgaze.CRM.Visitors.ActionProviders
|
91
|
98
|
var dt1 = await GetDataTableAsync(srequest, sel1, param);
|
92
|
99
|
var tenantid = Convert.ToInt32(dt1.Rows[0]["tenantid"]);
|
93
|
100
|
var _SeriesId = Convert.ToInt64(visitorInfo.Parameters["seriesid"]);
|
94
|
|
- // var visitorType = Convert.ToInt64(visitorInfo.Parameters["visitortype"]);
|
95
|
|
- var typeofvisitor = Convert.ToInt64(visitorInfo.Parameters["typeofvisitor"]);
|
96
|
|
- installedAppId = Convert.ToInt64(visitorInfo.Parameters["installedappid"]);
|
97
|
|
- var visitordata = await visitorManager.GetVisitorByIdAsync(srequest, visitorIds);
|
98
|
|
- var _seriesManager = Unibase.Dependency.DependencyConfig.Resolve<Unibase.Platform.Series.Managers.ISeriesManager>();
|
99
|
|
- if (visitordata.Result != null)
|
|
101
|
+ var CapturePhotoObj = Convert.ChangeType(req["CapturePhoto1"].ToString(), typeof(object)).ToString();
|
|
102
|
+ var deserializeJEntriesObj = JsonSerializer.Deserialize<List<ExpandoObject>>(CapturePhotoObj);
|
|
103
|
+ for (var k = 0; k < deserializeJEntriesObj.Count; k++)
|
100
|
104
|
{
|
101
|
|
- if (typeofvisitor == 1)
|
|
105
|
+ var data1 = deserializeJEntriesObj[k];
|
|
106
|
+ var CapturePhotoData = data1 as IDictionary<string, dynamic>;
|
|
107
|
+ var image = Convert.ChangeType(CapturePhotoData["image"].ToString(), typeof(string)).ToString();
|
|
108
|
+ var visitorType = Convert.ToInt64(visitorInfo.Parameters["visitortype"]);
|
|
109
|
+ var typeofvisitor = Convert.ToInt64(visitorInfo.Parameters["typeofvisitor"]);
|
|
110
|
+ installedAppId = Convert.ToInt64(visitorInfo.Parameters["installedappid"]);
|
|
111
|
+ var visitordata = await visitorManager.GetVisitorByIdAsync(srequest, visitorIds);
|
|
112
|
+ var _seriesManager = Unibase.Dependency.DependencyConfig.Resolve<Unibase.Platform.Series.Managers.ISeriesManager>();
|
|
113
|
+ if (visitordata.Result != null)
|
102
|
114
|
{
|
103
|
|
- stageStatusName = "CheckIn";
|
|
115
|
+ if (typeofvisitor == 1)
|
|
116
|
+ {
|
|
117
|
+ stageStatusName = "CheckIn";
|
104
|
118
|
|
105
|
|
- //string[] Ocode = { };
|
106
|
|
- //Ocode.Append(code);
|
107
|
|
- //string[] resultarray = Array.FindAll(Ocode, element => element == "-");
|
108
|
|
- //if (resultarray.Length > 1)
|
109
|
|
- //{
|
110
|
|
- // if (_SeriesId != 0)
|
111
|
|
- // {
|
112
|
|
- // var SeriesCodeInfo = await _seriesManager.GenerateSeriesCodeForQueueAsync(request, _SeriesId, DateTime.Now);
|
113
|
|
- // if (SeriesCodeInfo.Status == ResponseStatus.Error)
|
114
|
|
- // {
|
115
|
|
- // if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
116
|
|
- // return ActionResponse<FormActionResponse>.CreateErrorResponse("1", SeriesCodeInfo.Message);
|
117
|
|
- // }
|
118
|
|
- // else
|
119
|
|
- // {
|
120
|
|
- // _code = SeriesCodeInfo.Result.SeriesCode;
|
121
|
|
- // }
|
122
|
|
- // }
|
|
119
|
+ //string[] Ocode = { };
|
|
120
|
+ //Ocode.Append(code);
|
|
121
|
+ //string[] resultarray = Array.FindAll(Ocode, element => element == "-");
|
|
122
|
+ //if (resultarray.Length > 1)
|
|
123
|
+ //{
|
|
124
|
+ // if (_SeriesId != 0)
|
|
125
|
+ // {
|
|
126
|
+ // var SeriesCodeInfo = await _seriesManager.GenerateSeriesCodeForQueueAsync(request, _SeriesId, DateTime.Now);
|
|
127
|
+ // if (SeriesCodeInfo.Status == ResponseStatus.Error)
|
|
128
|
+ // {
|
|
129
|
+ // if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
|
130
|
+ // return ActionResponse<FormActionResponse>.CreateErrorResponse("1", SeriesCodeInfo.Message);
|
|
131
|
+ // }
|
|
132
|
+ // else
|
|
133
|
+ // {
|
|
134
|
+ // _code = SeriesCodeInfo.Result.SeriesCode;
|
|
135
|
+ // }
|
|
136
|
+ // }
|
123
|
137
|
|
124
|
|
- //}
|
125
|
|
- //else
|
126
|
|
- //{
|
127
|
|
- // _code = code;
|
128
|
|
- //}
|
129
|
|
- mobileNumber = visitordata.Result.MobileNumber;
|
130
|
|
- emailId = visitordata.Result.EmailId;
|
131
|
|
- visitorName = visitordata.Result.FullName;
|
132
|
|
- photourl = visitordata.Result.PhotoUrl;
|
133
|
|
- var stages = await stageManager.GetStageByStageStatusAsync(srequest, installedAppId, stageStatusName);
|
134
|
|
- var NewStageIds = stages.Result.StageId;
|
135
|
|
- var UpdateStages = new Update("bizgazecrm_visitors").Value("stageid", NewStageIds).Value("lastupdateddate", DateTime.Now).Where(Exp.Eq("visitorId", visitorIds));
|
136
|
|
- await _repository.ExecuteAsync(request, UpdateStages);
|
137
|
|
- var visitorTypeid = visitordata.Result.VisitorType;
|
|
138
|
+ //}
|
|
139
|
+ //else
|
|
140
|
+ //{
|
|
141
|
+ // _code = code;
|
|
142
|
+ //}
|
|
143
|
+ mobileNumber = visitordata.Result.MobileNumber;
|
|
144
|
+ emailId = visitordata.Result.EmailId;
|
|
145
|
+ visitorName = visitordata.Result.FullName;
|
|
146
|
+ photourl = visitordata.Result.PhotoUrl;
|
|
147
|
+ var stages = await stageManager.GetStageByStageStatusAsync(srequest, installedAppId, stageStatusName);
|
|
148
|
+ var NewStageIds = stages.Result.StageId;
|
|
149
|
+ var UpdateStages = new Update("bizgazecrm_visitors").Value("photourl", image).Value("agreement", true).Value("stageid", NewStageIds).Value("lastupdateddate", DateTime.Now).Where(Exp.Eq("visitorId", visitorIds));
|
|
150
|
+ await _repository.ExecuteAsync(request, UpdateStages);
|
|
151
|
+ var visitorTypeid = visitordata.Result.VisitorType;
|
|
152
|
+
|
|
153
|
+ var typeofvisitorid = visitordata.Result.TypeofVisitor;
|
|
154
|
+ var options1 = new EntityOptions()
|
|
155
|
+ {
|
|
156
|
+ IsIdentity = true,
|
|
157
|
+ IsNewEntity = true,
|
|
158
|
+ TableName = "unibasecmn_users",
|
|
159
|
+ PkColumn = "userid",
|
|
160
|
+ IsExcludeFromAudit = false,
|
|
161
|
+ Id = 0,
|
|
162
|
+ };
|
|
163
|
+ dynamic visitorparameters1 = new Dictionary<string, object>();
|
|
164
|
+ visitorparameters1.Add("username", visitorName);
|
|
165
|
+ visitorparameters1.Add("createdby", srequest.Identity.UserId);
|
|
166
|
+ visitorparameters1.Add("tenantid", tenantid);
|
|
167
|
+ visitorparameters1.Add("createddate", DateTime.Now);
|
|
168
|
+ visitorparameters1.Add("versionguid", Guid.NewGuid());
|
|
169
|
+ visitorparameters1.Add("statusid", (int)RowStatus.Active);
|
|
170
|
+ visitorparameters1.Add("installedappid", installedAppId);
|
|
171
|
+ visitorparameters1.Add("phonenumber", mobileNumber);
|
|
172
|
+ visitorparameters1.Add("emailaddress", emailId);
|
|
173
|
+ var responses = await _repository.SaveAsync(request, options1, visitorparameters1);
|
|
174
|
+ if (responses.Status == ResponseStatus.Error)
|
|
175
|
+ {
|
|
176
|
+ if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
|
177
|
+ return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "user Are Not Saved");
|
|
178
|
+ }
|
|
179
|
+ else
|
|
180
|
+ {
|
|
181
|
+ using (var requestTrans1 = await request.BeginTransactionAsync())
|
|
182
|
+ {
|
|
183
|
+ Int64 userid = 0;
|
|
184
|
+ {
|
|
185
|
+ var data = responses.Result as Dictionary<string, object>;
|
|
186
|
+ userid = Convert.ToInt64(data["_Id"]);
|
|
187
|
+ }
|
|
188
|
+ var options = new EntityOptions()
|
|
189
|
+ {
|
|
190
|
+ IsIdentity = false,
|
|
191
|
+ IsNewEntity = true,
|
|
192
|
+ TableName = "bizgazecrm_contacts",
|
|
193
|
+ PkColumn = "contactid",
|
|
194
|
+ IsExcludeFromAudit = false,
|
|
195
|
+ Id = 0,
|
|
196
|
+ };
|
|
197
|
+ dynamic contactparameters = new Dictionary<string, object>();
|
|
198
|
+ contactparameters.Add("contactid", userid);
|
|
199
|
+ contactparameters.Add("contactname", visitorName);
|
|
200
|
+ contactparameters.Add("createdby", srequest.Identity.UserId);
|
|
201
|
+ contactparameters.Add("createddate", DateTime.Now);
|
|
202
|
+ contactparameters.Add("versionguid", Guid.NewGuid());
|
|
203
|
+ contactparameters.Add("statusid", (int)RowStatus.Active);
|
|
204
|
+ contactparameters.Add("installedappid", installedAppId);
|
|
205
|
+ var response = await _repository.SaveAsync(request, options, contactparameters);
|
|
206
|
+ if (response.Status == ResponseStatus.Error)
|
|
207
|
+ {
|
|
208
|
+ if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
|
209
|
+ return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Contacts Are Not Saved");
|
|
210
|
+ }
|
|
211
|
+ var update = new Update("bizgazecrm_visitors").Value("contactid", userid).Value("code", code).Where(Exp.Eq("visitorid", visitorIds));
|
|
212
|
+ await _repository.ExecuteAsync(request, update);
|
|
213
|
+ }
|
|
214
|
+ }
|
138
|
215
|
|
139
|
|
- var typeofvisitorid = visitordata.Result.TypeofVisitor;
|
140
|
|
- var options1 = new EntityOptions()
|
141
|
|
- {
|
142
|
|
- IsIdentity = true,
|
143
|
|
- IsNewEntity = true,
|
144
|
|
- TableName = "unibasecmn_users",
|
145
|
|
- PkColumn = "userid",
|
146
|
|
- IsExcludeFromAudit = false,
|
147
|
|
- Id = 0,
|
148
|
|
- };
|
149
|
|
- dynamic visitorparameters1 = new Dictionary<string, object>();
|
150
|
|
- visitorparameters1.Add("username", visitorName);
|
151
|
|
- visitorparameters1.Add("createdby", srequest.Identity.UserId);
|
152
|
|
- visitorparameters1.Add("tenantid", tenantid);
|
153
|
|
- visitorparameters1.Add("createddate", DateTime.Now);
|
154
|
|
- visitorparameters1.Add("versionguid", Guid.NewGuid());
|
155
|
|
- visitorparameters1.Add("statusid", (int)RowStatus.Active);
|
156
|
|
- visitorparameters1.Add("installedappid", installedAppId);
|
157
|
|
- visitorparameters1.Add("phonenumber", mobileNumber);
|
158
|
|
- visitorparameters1.Add("emailaddress", emailId);
|
159
|
|
- var responses = await _repository.SaveAsync(request, options1, visitorparameters1);
|
160
|
|
- if (responses.Status == ResponseStatus.Error)
|
161
|
|
- {
|
162
|
|
- if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
163
|
|
- return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "user Are Not Saved");
|
164
|
216
|
}
|
165
|
217
|
else
|
166
|
218
|
{
|
167
|
|
- using (var requestTrans1 = await request.BeginTransactionAsync())
|
|
219
|
+ var UpdateStages1 = new Update("bizgazecrm_visitors").Value("photourl", image).Value("agreement", true).Value("lastupdateddate", DateTime.Now).Where(Exp.Eq("visitorId", visitorIds));
|
|
220
|
+ await _repository.ExecuteAsync(request, UpdateStages1);
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+ var options2 = new EntityOptions()
|
168
|
225
|
{
|
169
|
|
- Int64 userid = 0;
|
170
|
|
- {
|
171
|
|
- var data = responses.Result as Dictionary<string, object>;
|
172
|
|
- userid = Convert.ToInt64(data["_Id"]);
|
173
|
|
- }
|
174
|
|
- var options = new EntityOptions()
|
175
|
|
- {
|
176
|
|
- IsIdentity = false,
|
177
|
|
- IsNewEntity = true,
|
178
|
|
- TableName = "bizgazecrm_contacts",
|
179
|
|
- PkColumn = "contactid",
|
180
|
|
- IsExcludeFromAudit = false,
|
181
|
|
- Id = 0,
|
182
|
|
- };
|
183
|
|
- dynamic contactparameters = new Dictionary<string, object>();
|
184
|
|
- contactparameters.Add("contactid", userid);
|
185
|
|
- contactparameters.Add("contactname", visitorName);
|
186
|
|
- contactparameters.Add("createdby", srequest.Identity.UserId);
|
187
|
|
- contactparameters.Add("createddate", DateTime.Now);
|
188
|
|
- contactparameters.Add("versionguid", Guid.NewGuid());
|
189
|
|
- contactparameters.Add("statusid", (int)RowStatus.Active);
|
190
|
|
- contactparameters.Add("installedappid", installedAppId);
|
191
|
|
- var response = await _repository.SaveAsync(request, options, contactparameters);
|
192
|
|
- if (response.Status == ResponseStatus.Error)
|
|
226
|
+ IsIdentity = true,
|
|
227
|
+ IsNewEntity = true,
|
|
228
|
+ TableName = "unibasecmn_users",
|
|
229
|
+ PkColumn = "userid",
|
|
230
|
+ IsExcludeFromAudit = false,
|
|
231
|
+ Id = 0,
|
|
232
|
+ };
|
|
233
|
+ dynamic visitorparameters2 = new Dictionary<string, object>();
|
|
234
|
+ visitorparameters2.Add("username", visitordata.Result.FullName);
|
|
235
|
+ visitorparameters2.Add("createdby", srequest.Identity.UserId);
|
|
236
|
+ visitorparameters2.Add("tenantid", tenantid);
|
|
237
|
+ visitorparameters2.Add("createddate", DateTime.Now);
|
|
238
|
+ visitorparameters2.Add("versionguid", Guid.NewGuid());
|
|
239
|
+ visitorparameters2.Add("statusid", (int)RowStatus.Active);
|
|
240
|
+ visitorparameters2.Add("installedappid", installedAppId);
|
|
241
|
+ visitorparameters2.Add("phonenumber", visitordata.Result.MobileNumber);
|
|
242
|
+ visitorparameters2.Add("emailaddress", visitordata.Result.EmailId);
|
|
243
|
+ var responses = await _repository.SaveAsync(request, options2, visitorparameters2);
|
|
244
|
+
|
|
245
|
+ if (responses.Status == ResponseStatus.Error)
|
|
246
|
+ {
|
|
247
|
+ if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
|
248
|
+ return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "user Are Not Saved");
|
|
249
|
+ }
|
|
250
|
+ else
|
|
251
|
+ {
|
|
252
|
+ using (var requestTrans1 = await request.BeginTransactionAsync())
|
193
|
253
|
{
|
194
|
|
- if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
195
|
|
- return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Contacts Are Not Saved");
|
|
254
|
+ Int64 userid = 0;
|
|
255
|
+ {
|
|
256
|
+ var data = responses.Result as Dictionary<string, object>;
|
|
257
|
+ userid = Convert.ToInt64(data["_Id"]);
|
|
258
|
+ }
|
|
259
|
+ var options1 = new EntityOptions()
|
|
260
|
+ {
|
|
261
|
+ IsIdentity = false,
|
|
262
|
+ IsNewEntity = true,
|
|
263
|
+ TableName = "bizgazecrm_contacts",
|
|
264
|
+ PkColumn = "contactid",
|
|
265
|
+ IsExcludeFromAudit = false,
|
|
266
|
+ Id = 0,
|
|
267
|
+ };
|
|
268
|
+ dynamic contactparameters2 = new Dictionary<string, object>();
|
|
269
|
+ contactparameters2.Add("contactid", userid);
|
|
270
|
+ contactparameters2.Add("contactname", visitorName);
|
|
271
|
+ contactparameters2.Add("createdby", srequest.Identity.UserId);
|
|
272
|
+ contactparameters2.Add("createddate", DateTime.Now);
|
|
273
|
+ contactparameters2.Add("versionguid", Guid.NewGuid());
|
|
274
|
+ contactparameters2.Add("statusid", (int)RowStatus.Active);
|
|
275
|
+ contactparameters2.Add("installedappid", installedAppId);
|
|
276
|
+ var response1 = await _repository.SaveAsync(request, options1, contactparameters2);
|
|
277
|
+ if (response1.Status == ResponseStatus.Error)
|
|
278
|
+ {
|
|
279
|
+ if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
|
280
|
+ return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Contacts Are Not Saved");
|
|
281
|
+ }
|
|
282
|
+ var update = new Update("bizgazecrm_visitors").Value("contactid", userid).Value("code", code).Where(Exp.Eq("visitorid", visitorIds));
|
|
283
|
+ await _repository.ExecuteAsync(request, update);
|
196
|
284
|
}
|
197
|
|
- var update = new Update("bizgazecrm_visitors").Value("contactid", userid).Value("code", code).Where(Exp.Eq("visitorid", visitorIds));
|
198
|
|
- await _repository.ExecuteAsync(request, update);
|
199
|
285
|
}
|
200
|
|
- }
|
201
|
286
|
|
|
287
|
+ var selectvis = new Unibase.Data.Sql.Select("bizgazecrm_visitors").Columns("versionguid").Where("visitorid", visitorIds);
|
|
288
|
+ var visparam = new List<Unibase.Data.Parameter>();
|
|
289
|
+ param.Add(new Unibase.Data.Parameter("@visitorId", visitorIds));
|
|
290
|
+ var datatable = await GetDataTableAsync(srequest, sel1, param);
|
|
291
|
+ string versionguid = string.Empty;
|
|
292
|
+ if (datatable != null)
|
|
293
|
+ {
|
|
294
|
+ versionguid = datatable.Rows[0]["versionguid"].ToString();
|
|
295
|
+ }
|
|
296
|
+
|
|
297
|
+ installedAppId = visitordata.Result.Installedappid;
|
|
298
|
+ stageStatusName = "Pre-Invite";
|
|
299
|
+ var options = new EntityOptions()
|
|
300
|
+ {
|
|
301
|
+ IsIdentity = true,
|
|
302
|
+ IsNewEntity = false,
|
|
303
|
+ TableName = "bizgazecrm_visitors",
|
|
304
|
+ PkColumn = "visitorid",
|
|
305
|
+ IsExcludeFromAudit = false,
|
|
306
|
+ Id = defaultPKValue,
|
|
307
|
+ };
|
|
308
|
+ var stage = await stageManager.GetStageByStageStatusAsync(srequest, installedAppId, stageStatusName);
|
|
309
|
+ var NewStageId = stage.Result.StageId;
|
|
310
|
+ dynamic contactparameters = new Dictionary<string, object>();
|
|
311
|
+ contactparameters.Add("stageid", NewStageId);
|
|
312
|
+ contactparameters.Add("versionguid", versionguid);
|
|
313
|
+ contactparameters.Add("lastupdateddate", DateTime.Now);
|
|
314
|
+ defaultPKValue = visitorIds;
|
|
315
|
+ var response = await _repository.SaveAsync(request, options, contactparameters);
|
|
316
|
+
|
|
317
|
+ }
|
202
|
318
|
}
|
203
|
|
- else
|
|
319
|
+ var visitorInfos = await visitorManager.GetpreVisitorsAsync(srequest, code);
|
|
320
|
+ var visitorId = Convert.ToInt64(visitorInfos.Result.VisitorId);
|
|
321
|
+ var select = new Unibase.Data.Sql.Select("bizgazecrm_visitorcheckout").AllColumns().Where("visitorId", visitorId);
|
|
322
|
+ var parameters = new List<Unibase.Data.Parameter>();
|
|
323
|
+ parameters.Add(new Unibase.Data.Parameter("@visitorId", visitorId));
|
|
324
|
+ var dt = await GetDataTableAsync(srequest, select, parameters);
|
|
325
|
+ if (dt.Rows.Count == 0)
|
204
|
326
|
{
|
205
|
|
- var options2 = new EntityOptions()
|
|
327
|
+ var vistoroptions = new EntityOptions()
|
206
|
328
|
{
|
207
|
329
|
IsIdentity = true,
|
208
|
330
|
IsNewEntity = true,
|
209
|
|
- TableName = "unibasecmn_users",
|
210
|
|
- PkColumn = "userid",
|
|
331
|
+ TableName = "bizgazecrm_visitorcheckout",
|
|
332
|
+ PkColumn = "visitorcheckoutid",
|
211
|
333
|
IsExcludeFromAudit = false,
|
212
|
334
|
Id = 0,
|
213
|
335
|
};
|
214
|
|
- dynamic visitorparameters2 = new Dictionary<string, object>();
|
215
|
|
- visitorparameters2.Add("username", visitordata.Result.FullName);
|
216
|
|
-
|
217
|
|
- visitorparameters2.Add("createdby", srequest.Identity.UserId);
|
218
|
|
- visitorparameters2.Add("tenantid", tenantid);
|
219
|
|
- visitorparameters2.Add("createddate", DateTime.Now);
|
220
|
|
- visitorparameters2.Add("versionguid", Guid.NewGuid());
|
221
|
|
- visitorparameters2.Add("statusid", (int)RowStatus.Active);
|
222
|
|
- visitorparameters2.Add("installedappid", installedAppId);
|
223
|
|
- visitorparameters2.Add("phonenumber", visitordata.Result.MobileNumber);
|
224
|
|
- visitorparameters2.Add("emailaddress", visitordata.Result.EmailId);
|
225
|
|
- var responses = await _repository.SaveAsync(request, options2, visitorparameters2);
|
226
|
|
-
|
227
|
|
- if (responses.Status == ResponseStatus.Error)
|
|
336
|
+ dynamic visitor = new Dictionary<string, object>();
|
|
337
|
+ visitor.Add("createdby", srequest.Identity.UserId);
|
|
338
|
+ visitor.Add("checkindate", visitorInfos.Result.CheckInDate);
|
|
339
|
+ visitor.Add("tenantid", tenantid);
|
|
340
|
+ visitor.Add("comments", "");
|
|
341
|
+ visitor.Add("checkoutdate", DateTime.MinValue);
|
|
342
|
+ visitor.Add("rating", 0);
|
|
343
|
+ visitor.Add("versionguid", Guid.NewGuid());
|
|
344
|
+ visitor.Add("uniqueid", code);
|
|
345
|
+ visitor.Add("statusid", (int)RowStatus.Active);
|
|
346
|
+ visitor.Add("installedappid", visitorInfos.Result.Installedappid);
|
|
347
|
+ visitor.Add("lastupdateddate", DateTime.Now);
|
|
348
|
+ visitor.Add("visitorid", visitorId);
|
|
349
|
+ var response1 = await _repository.SaveAsync(request, vistoroptions, visitor);
|
|
350
|
+ if (response1.Status == ResponseStatus.Error)
|
228
|
351
|
{
|
229
|
352
|
if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
230
|
|
- return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "user Are Not Saved");
|
231
|
|
- }
|
232
|
|
- else
|
233
|
|
- {
|
234
|
|
- using (var requestTrans1 = await request.BeginTransactionAsync())
|
235
|
|
- {
|
236
|
|
- Int64 userid = 0;
|
237
|
|
- {
|
238
|
|
- var data = responses.Result as Dictionary<string, object>;
|
239
|
|
- userid = Convert.ToInt64(data["_Id"]);
|
240
|
|
- }
|
241
|
|
- var options1 = new EntityOptions()
|
242
|
|
- {
|
243
|
|
- IsIdentity = false,
|
244
|
|
- IsNewEntity = true,
|
245
|
|
- TableName = "bizgazecrm_contacts",
|
246
|
|
- PkColumn = "contactid",
|
247
|
|
- IsExcludeFromAudit = false,
|
248
|
|
- Id = 0,
|
249
|
|
- };
|
250
|
|
- dynamic contactparameters2 = new Dictionary<string, object>();
|
251
|
|
- contactparameters2.Add("contactid", userid);
|
252
|
|
- contactparameters2.Add("contactname", visitorName);
|
253
|
|
- contactparameters2.Add("createdby", srequest.Identity.UserId);
|
254
|
|
- contactparameters2.Add("createddate", DateTime.Now);
|
255
|
|
- contactparameters2.Add("versionguid", Guid.NewGuid());
|
256
|
|
- contactparameters2.Add("statusid", (int)RowStatus.Active);
|
257
|
|
- contactparameters2.Add("installedappid", installedAppId);
|
258
|
|
- var response1 = await _repository.SaveAsync(request, options1, contactparameters2);
|
259
|
|
- if (response1.Status == ResponseStatus.Error)
|
260
|
|
- {
|
261
|
|
- if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
262
|
|
- return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Contacts Are Not Saved");
|
263
|
|
- }
|
264
|
|
- var update = new Update("bizgazecrm_visitors").Value("contactid", userid).Value("code", code).Where(Exp.Eq("visitorid", visitorIds));
|
265
|
|
- await _repository.ExecuteAsync(request, update);
|
266
|
|
- }
|
267
|
|
- }
|
268
|
|
-
|
269
|
|
- var selectvis = new Unibase.Data.Sql.Select("bizgazecrm_visitors").Columns("versionguid").Where("visitorid", visitorIds);
|
270
|
|
- var visparam = new List<Unibase.Data.Parameter>();
|
271
|
|
- param.Add(new Unibase.Data.Parameter("@visitorId", visitorIds));
|
272
|
|
- var datatable = await GetDataTableAsync(srequest, sel1, param);
|
273
|
|
- string versionguid = string.Empty;
|
274
|
|
- if (datatable != null)
|
275
|
|
- {
|
276
|
|
- versionguid = datatable.Rows[0]["versionguid"].ToString();
|
|
353
|
+ return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Check Out Data Not Saved");
|
277
|
354
|
}
|
278
|
355
|
|
279
|
|
- installedAppId = visitordata.Result.Installedappid;
|
280
|
|
- stageStatusName = "Pre-Invite";
|
281
|
|
- var options = new EntityOptions()
|
282
|
|
- {
|
283
|
|
- IsIdentity = true,
|
284
|
|
- IsNewEntity = false,
|
285
|
|
- TableName = "bizgazecrm_visitors",
|
286
|
|
- PkColumn = "visitorid",
|
287
|
|
- IsExcludeFromAudit = false,
|
288
|
|
- Id = defaultPKValue,
|
289
|
|
- };
|
290
|
|
- var stage = await stageManager.GetStageByStageStatusAsync(srequest, installedAppId, stageStatusName);
|
291
|
|
- var NewStageId = stage.Result.StageId;
|
292
|
|
- dynamic contactparameters = new Dictionary<string, object>();
|
293
|
|
- contactparameters.Add("stageid", NewStageId);
|
294
|
|
- contactparameters.Add("versionguid", versionguid);
|
295
|
|
- contactparameters.Add("lastupdateddate", DateTime.Now);
|
296
|
|
- defaultPKValue = visitorIds;
|
297
|
|
- var response = await _repository.SaveAsync(request, options, contactparameters);
|
298
|
|
-
|
299
|
|
- }
|
300
|
|
- }
|
301
|
|
- var visitorInfos = await visitorManager.GetpreVisitorsAsync(srequest, code);
|
302
|
|
- var visitorId = Convert.ToInt64(visitorInfos.Result.VisitorId);
|
303
|
|
- var select = new Unibase.Data.Sql.Select("bizgazecrm_visitorcheckout").AllColumns().Where("visitorId", visitorId);
|
304
|
|
- var parameters = new List<Unibase.Data.Parameter>();
|
305
|
|
- parameters.Add(new Unibase.Data.Parameter("@visitorId", visitorId));
|
306
|
|
- var dt = await GetDataTableAsync(srequest, select, parameters);
|
307
|
|
- if (dt.Rows.Count == 0)
|
308
|
|
- {
|
309
|
|
- var vistoroptions = new EntityOptions()
|
310
|
|
- {
|
311
|
|
- IsIdentity = true,
|
312
|
|
- IsNewEntity = true,
|
313
|
|
- TableName = "bizgazecrm_visitorcheckout",
|
314
|
|
- PkColumn = "visitorcheckoutid",
|
315
|
|
- IsExcludeFromAudit = false,
|
316
|
|
- Id = 0,
|
317
|
|
- };
|
318
|
|
- dynamic visitor = new Dictionary<string, object>();
|
319
|
|
- visitor.Add("createdby", srequest.Identity.UserId);
|
320
|
|
- visitor.Add("checkindate", visitorInfos.Result.CheckInDate);
|
321
|
|
- visitor.Add("tenantid", tenantid);
|
322
|
|
- visitor.Add("comments", "");
|
323
|
|
- visitor.Add("checkoutdate", DateTime.MinValue);
|
324
|
|
- visitor.Add("rating", 0);
|
325
|
|
- visitor.Add("versionguid", Guid.NewGuid());
|
326
|
|
- visitor.Add("uniqueid", code);
|
327
|
|
- visitor.Add("statusid", (int)RowStatus.Active);
|
328
|
|
- visitor.Add("installedappid", visitorInfos.Result.Installedappid);
|
329
|
|
- visitor.Add("lastupdateddate", DateTime.Now);
|
330
|
|
- visitor.Add("visitorid", visitorId);
|
331
|
|
- var response1 = await _repository.SaveAsync(request, vistoroptions, visitor);
|
332
|
|
- if (response1.Status == ResponseStatus.Error)
|
333
|
|
- {
|
334
|
|
- if (requestTrans.StartedLocal) await request.RollbackTransactionAsync();
|
335
|
|
- return ActionResponse<FormActionResponse>.CreateErrorResponse("1", "Visitor Check Out Data Not Saved");
|
336
|
356
|
}
|
337
|
357
|
|
338
|
358
|
}
|
339
|
|
-
|
340
|
359
|
}
|
341
|
360
|
var returnresponse = new FormActionResponse();
|
342
|
361
|
returnresponse.Obj = dictObj as ExpandoObject;
|